import { SlangSurfaceStyles, SlangHintStyle, SlangUIPositions, SlangUITheme, SlangTriggerStyle } from "../../utils/uiEnums"; import { OnboardingOptions } from "../slangOnboardingOptions"; import { TriggerInterface } from "../interface/triggerInterface"; import { UIInterface } from "../interface/uiInterface"; import { SurfaceInterface } from "../interface/surfaceInterface"; import { OnboardingImpl } from "./OnboardingImpl"; import { PreactUI } from "../../uiImplementation/preact/preactUI"; import { SlangLocale } from "../../utils/slangLocale"; import { SlangUIConfig } from "../../common/slangBuddyTemplate"; declare class UIImpl implements UIInterface { private static sInstance; private mSurfaceStyle; private mHintStyle; mTrigger: TriggerInterface; mSurface: SurfaceInterface; mOnboarding: OnboardingImpl; mOnboardingOptions: OnboardingOptions; mIsOnboardingDisabled: boolean; mDisabled: boolean; mTriggerVisible: boolean; mSlangUI: PreactUI; mIsCustomTrigger: boolean; mIsUnsupportedBrowser: boolean; constructor(); SlangUIPosition: typeof SlangUIPositions; SlangUIMode: typeof SlangUITheme; SlangSurfaceUIHintMode: typeof SlangHintStyle; SlangSurfaceStyle: typeof SlangSurfaceStyles; SlangTriggerStyle: typeof SlangTriggerStyle; static getInstance: () => UIImpl; initializeSlangUI: () => void; onDeviceOrientationChanged: () => void; onASRPermissionDenied: () => void; setSurface: (surfaceStyle: SlangSurfaceStyles) => void; setSurfaceHintMode: (hintMode: SlangHintStyle) => void; getSurfaceHintMode: () => SlangHintStyle; getSurface: () => SurfaceInterface; setBrandColor: (color: string) => void; setImageResource: (imageRes: string) => void; setTriggerSize: (width: number, height: number) => void; setBackgroundColor: (color: string) => void; setBackgroundColorGradient: (colors: string[]) => void; getPosition: () => never[]; setPosition: (position: SlangUIPositions, offsetX?: number | undefined, offsetY?: number | undefined, force?: boolean | undefined) => void; setIsDraggable: (isDraggable: boolean) => void; disableOnboarding: () => void; setOnboardingOptions: (onboardingOptions: OnboardingOptions) => void; show: () => void; hide: () => void; setTriggerVisible: (visible: boolean) => void; isVisible: () => boolean; setTypeface: (typeface: string) => void; setTextColor: (color: string) => void; setSecondaryTextColor: (color: string) => void; setUIMode: (mode: SlangUITheme) => void; onDisabled: () => void; private initOnboarding; setUIHints: (uiHints: { "en-IN"?: string[] | undefined; "hi-IN"?: string[] | undefined; "kn-IN"?: string[] | undefined; "ta-IN"?: string[] | undefined; "ml-IN"?: string[] | undefined; "vi-VN"?: string[] | undefined; } | null) => void; setDisambiguationHints: (disambiguationHints: string[] | null | undefined) => void; showLanguageSelection: () => Promise; setTrigger: (triggerStyle: SlangTriggerStyle) => void; getTrigger: () => TriggerInterface; setRootElement: (el: HTMLElement) => void; enableCustomTrigger: (isEnabled: boolean) => void; getTriggerComponent: () => import("preact").ComponentType<{}>; onOnboardingConfigAvailable: (uiConfig: SlangUIConfig) => void; setTriggerTitle: (flatTriggerTitle: { "en-IN"?: string | undefined; "hi-IN"?: string | undefined; "kn-IN"?: string | undefined; "ta-IN"?: string | undefined; "ml-IN"?: string | undefined; "vi-VN"?: string | undefined; }) => void; setIsUnsupportedBrowser: (isUnsupportedBrowser: boolean) => void; getIsUnsupportedBrowser: () => boolean; } export { UIImpl };