import type { VideoQuality } from "@vkontakte/videoplayer-shared"; import { type PlaybackRate } from "@vkontakte/videoplayer-core"; export declare const savePreferredVolume: (volume: number) => void; export declare const getPreferredVolume: () => number | undefined; export declare const savePreferredQuality: (videoId: number | undefined, value: VideoQuality) => void; export declare const deletePreferredQuality: () => void; export declare const getPreferredQuality: (currentVideoId: number | undefined) => VideoQuality | undefined; export declare const savePreferMute: (preferMute: boolean) => void; export declare const getPreferMute: () => boolean; export declare const savePreferTrafficSavingEnabled: (trafficSavingEnabled: boolean) => void; export declare const getPreferTrafficSavingEnabled: () => boolean; export declare const getPreferredStreamLanguage: () => string | null; export declare const savePreferredStreamLanguage: (language: string) => void; export declare const getPreferredSubtitlesLanguage: () => string | null; export declare const savePreferredSubtitlesLanguage: (language?: string) => void; export declare const savePreferredRate: (rate: PlaybackRate) => void; export declare const getPreferredRate: () => PlaybackRate | undefined; export declare const savePreferredAutoplayNext: (autoplayNext: boolean) => void; export declare const getPreferredAutoplayNext: () => boolean; export type PreferredQualitySettingsType = "traffic_saving" | "high_quality" | "auto_quality" | "exact_video"; export type PreferredQualitySettingsValue = { type: Exclude; videoId?: number; } | { type: "exact_quality"; quality: VideoQuality; videoId?: number; }; export type DefaultPreferredQualitySettingsValue = Exclude; export type QualitySettingsAppliesTo = "as-default" | "to-video"; export declare const getPreferredQualitySettings: (videoId: number | undefined) => (PreferredQualitySettingsValue & { appliesTo: QualitySettingsAppliesTo; }) | null; export declare const migrateSettingsToLegacyWay: (videoId?: number) => void; export declare const savePreferredQualitySettings: (value: PreferredQualitySettingsValue, appliesTo?: QualitySettingsAppliesTo) => void; export declare const savePreferredDefaultQualitySettings: (value: DefaultPreferredQualitySettingsValue) => void; export declare const removePreferredQualitySettingsByVideo: () => void; export declare const getPreferredDefaultQualitySettings: () => DefaultPreferredQualitySettingsValue | null; type IUserSalt = string & {}; type IVideoId = string & {}; export interface IVideoPrefs { [userSalt: IUserSalt]: IVideoPrefsUser; } export interface IVideoPrefsUser { [videoId: IVideoId]: IVideoPrefsUserVideo; } export interface IVideoPrefsUserVideo { updatedTs: number; subtitleTrackId?: string; audioTrackId?: string; } export declare const getUserVideoPrefs: (userSalt: IUserSalt, videoId: IVideoId) => IVideoPrefsUserVideo | null; export declare const saveUserVideoPrefs: (userSalt: IUserSalt, videoId: IVideoId, settings: Omit) => void; export declare function markPreviewTrackCloseTooltipAsShown(): void; export declare function previewTrackCloseTooltipShown(): boolean; export {};