// generated by diplomat-tool
import type { IanaParser } from "./IanaParser"
import type { Rfc9557ParseError } from "./Rfc9557ParseError"
import type { Time } from "./Time"
import type { TimeZoneInfo } from "./TimeZoneInfo"
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";



/**
 * An ICU4X `ZonedTime` object capable of containing a ISO-8601 time, and zone.
 *
 * See the [Rust documentation for `ZonedTime`](https://docs.rs/icu/2.2.0/icu/time/struct.ZonedTime.html) for more information.
 */
export class ZonedTime {
    get time(): Time;
    get zone(): TimeZoneInfo;
    /** @internal */
    constructor();


    /**
     * Creates a new {@link ZonedTime} from an IXDTF string.
     *
     * See the [Rust documentation for `try_strict_from_str`](https://docs.rs/icu/2.2.0/icu/time/struct.ZonedTime.html#method.try_strict_from_str) for more information.
     */
    static strictFromString(v: string, ianaParser: IanaParser): ZonedTime;

    /**
     * Creates a new {@link ZonedTime} from a location-only IXDTF string.
     *
     * See the [Rust documentation for `try_location_only_from_str`](https://docs.rs/icu/2.2.0/icu/time/struct.ZonedTime.html#method.try_location_only_from_str) for more information.
     */
    static locationOnlyFromString(v: string, ianaParser: IanaParser): ZonedTime;

    /**
     * Creates a new {@link ZonedTime} from an offset-only IXDTF string.
     *
     * See the [Rust documentation for `try_offset_only_from_str`](https://docs.rs/icu/2.2.0/icu/time/struct.ZonedTime.html#method.try_offset_only_from_str) for more information.
     */
    static offsetOnlyFromString(v: string): ZonedTime;

    /**
     * Creates a new {@link ZonedTime} from an IXDTF string, without requiring the offset.
     *
     * See the [Rust documentation for `try_lenient_from_str`](https://docs.rs/icu/2.2.0/icu/time/struct.ZonedTime.html#method.try_lenient_from_str) for more information.
     */
    static lenientFromString(v: string, ianaParser: IanaParser): ZonedTime;
}