export type DevicePersistenceOptions = { /** * Enables device preference persistence on web. * @default true */ enabled?: boolean; /** * Storage key for persisted preferences. * @default '@stream-io/device-preferences' */ storageKey?: string; }; export type DevicePreferenceKey = 'microphone' | 'camera' | 'speaker'; export type LocalDevicePreference = { selectedDeviceId: string; selectedDeviceLabel: string; muted?: boolean; }; export type LocalDevicePreferences = { [type in DevicePreferenceKey]?: LocalDevicePreference | LocalDevicePreference[]; }; export declare const defaultDeviceId = "default"; export declare const normalize: (options: DevicePersistenceOptions | undefined) => Required; export declare const createSyntheticDevice: (deviceId: string, kind: MediaDeviceKind) => MediaDeviceInfo; export declare const readPreferences: (storageKey: string) => LocalDevicePreferences; export declare const writePreferences: (currentDevice: MediaDeviceInfo | undefined, deviceKey: DevicePreferenceKey, muted: boolean | undefined, storageKey: string) => void; export declare const toPreferenceList: (preference?: LocalDevicePreference | LocalDevicePreference[]) => LocalDevicePreference[];