import { LocaleModule, configureLocalization } from '@lit/localize';
import { WeavyClient } from './weavy';
import { Constructor } from '../types/generic.types';
/**
 * The locale used in the source files.
 */
export declare const SOURCE_LOCALE = "en";
export interface WeavyLocalizationProps {
    locales: [string, LocaleModule | Promise<LocaleModule> | (() => Promise<LocaleModule>)][];
    readonly localization?: ReturnType<typeof configureLocalization>;
    locale: string;
}
export declare const WeavyLocalizationMixin: <TBase extends Constructor<WeavyClient>>(Base: TBase) => {
    new (...args: any[]): {
        _locales: Map<string, LocaleModule | Promise<LocaleModule> | (() => Promise<LocaleModule>)>;
        get locales(): WeavyLocalizationProps["locales"];
        set locales(locales: WeavyLocalizationProps["locales"] | null | undefined);
        _locale: string;
        _localization?: ReturnType<typeof configureLocalization>;
        readonly localization: {
            getLocale: (() => string) & {
                _LIT_LOCALIZE_GET_LOCALE_?: never;
            };
            setLocale: ((newLocale: string) => Promise<void>) & {
                _LIT_LOCALIZE_SET_LOCALE_?: never;
            };
        } | undefined;
        /**
         * Selected locale. The locale must be pre configured in `.locales`.
         */
        get locale(): string;
        set locale(newLocale: string | null | undefined);
        loadLocale(newLocale: string): Promise<LocaleModule>;
        configureLocalization(): void;
        readonly weavySid: string;
        readonly weavyId: string;
        readonly host: HTMLElement;
        cloudFilePickerUrl: string | URL;
        disableEnvironmentImports: boolean;
        gcTime: number;
        scrollBehavior: "smooth" | "instant" | "auto";
        staleTime: number;
        tokenFactoryRetryDelay: number;
        tokenFactoryTimeout: number;
        "__#16@#resolveUrl"?: (url: URL) => void;
        "__#16@#whenUrl": Promise<unknown>;
        whenUrl(): Promise<void>;
        "__#16@#url"?: URL;
        get url(): URL | undefined;
        set url(url: string | URL | null | undefined);
        readonly cachePrefix: string;
        reset(): Promise<void>;
        "__#16@#isDestroyed": boolean;
        readonly isDestroyed: boolean;
        destroy(): void;
    };
    /**
     * The locale used in the Weavy source.
     */
    readonly sourceLocale: "" | "en";
} & TBase;
//# sourceMappingURL=localization.d.ts.map