import { GenericT9nStrings, LocaleObserverResult } from '@arcgis/toolkit/intl'; export type T9nMeta = { _lang: LocaleObserverResult["lang"]; _t9nLocale: LocaleObserverResult["t9nLocale"]; _loading: boolean; /** * The "_overrides" property won't actually exist at runtime and exists only * to simplify typing like so: * * @example * ```ts * // Type of the messageOverrides is set automatically based on _overrides: * @property() messageOverrides?: typeof this.messages._overrides; * ``` */ _overrides: DeepPartial; /** * If messageOverrides are in effect, this will contain original strings */ _original?: T9nStrings; }; type DeepPartial = T extends object ? { [P in keyof T]?: DeepPartial; } : T; type Options = { readonly name?: string | null; /** @default false */ readonly blocking?: boolean; }; export interface UseT9n { (options: Options & { readonly blocking: true; }): Strings & T9nMeta; (options?: Options & { readonly blocking?: false; }): Partial & T9nMeta; } /** * Load component's localization strings. * * Documentation: https://webgis.esri.com/references/lumina/controllers/useT9n * * Design decisions: * - https://devtopia.esri.com/WebGIS/arcgis-web-components/discussions/969 * - https://devtopia.esri.com/WebGIS/arcgis-web-components/discussions/987 */ export declare const makeT9nController: (getAssetPath: (path: string) => string) => UseT9n; export {};