/// <reference types="@geoscene/core/interfaces.d.ts" />
/// <reference types="../../index.d.ts" />
import { Use } from '@arcgis/lumina/controllers';
import { JsxNode, PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina';
import { GeosceneReferenceElement } from '../../utils/component-utils';
import { useView } from '../../controllers/useView';
type ExpandDirection = "end" | "start";
type State = "disabled" | "ready";

/**
 * Time Zone Label is a component for displaying the current [time zone](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-map/#timeZone) of a [Map](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-map/).
 * The component has two states, collapsed as a small button and expanded displaying the internationalized name of the Map's time zone.
 * Users can toggle between these states by clicking the component's expand/collapse button.
 * By default the component is collapsed.
 *
 * When expanding, the component will lengthen inwards when [positioned](#position) within a Map.
 * This behavior can be overridden by setting the [expandDirection](#expandDirection) property to either `"start"` or `"end"`.
 *
 * [Read more...](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-time-zone-label/)
 */
export declare class GeosceneTimeZoneLabel extends LitElement {
    /**
     * The state of the component.
     *
     * @default "disabled"
     */
    readonly state: State;
    referenceElement?: GeosceneReferenceElement | string;
    /** @default "top-left" */
    position: __geoscene.UIPosition;
    /**
     * When `true`, sets the component to a disabled state so the user cannot interact with it.
     *
     * @default false
     */
    disabled: boolean;
    /**
     * The direction the component will expand.
     *
     * By default, the component will expand inward if assigned to a View UI corner. If the component is positioned manually,
     * the component will expand towards the "end" which is equivalent to right in a LTR application.
     */
    get expandDirection(): ExpandDirection;
    set expandDirection(value: ExpandDirection | undefined);
    /**
     * The expanded state of the component.
     *
     * @default false
     */
    expanded: boolean;
    /**
     * Replace localized message strings with your own strings.
     *
     * _**Note**: Individual message keys may change between releases._
     *
     * @property
     * ({ reflect: true })
     * icon?: HTMLCalciteIconElement["icon"] = "time-zone";
     *
     * /**
     * @copyDoc
     */
    messageOverrides?: typeof this._messages._overrides;
    /** The component's default label. */
    label?: string;
    /** Emitted when the value of a property is changed. Use this to listen to changes to properties. */
    readonly geoscenePropertyChange: TargetedEvent<this, {
        name: "state";
    }>;
    /** Emitted when the component associated with a map or scene view is is ready to be interacted with. */
    readonly geosceneReady: TargetedEvent<this, void>;
    private _messages: {
        componentLabel: string;
        noAdjustment: string;
    } & import('@arcgis/lumina/controllers').T9nMeta<{
        componentLabel: string;
        noAdjustment: string;
    }>;
    readonly _setterTypes: {
        expandDirection?: ExpandDirection | undefined;
    };
}
export {};