export type TranslatorAvailability = "available" | "downloadable" | "downloading" | "unavailable"; export interface NativeTextTranslator { translate(input: string): Promise; destroy?: () => void; } interface TranslationPair { sourceLanguage: string; targetLanguage: string; } interface TranslationMonitor { addEventListener(type: "downloadprogress", listener: (event: Event & { loaded: number; }) => void): void; } export interface NativeTranslatorApi { availability(options: TranslationPair): Promise; create(options: TranslationPair & { monitor?: (monitor: TranslationMonitor) => void; }): Promise; } export declare function getNativeTranslatorApi(scope?: typeof globalThis): NativeTranslatorApi | undefined; export declare function preferredTargetLanguage(languages?: readonly string[]): string | undefined; export declare function createNativeTranslator(api: NativeTranslatorApi, targetLanguage: string, onDownloadProgress?: (progress: number) => void): Promise; export {}; //# sourceMappingURL=browserTranslator.d.ts.map