import * as _readium_navigator from '@readium/navigator'; import { EpubNavigatorListeners, IEpubPreferences, IEpubDefaults, IInjectablesConfig, IContentProtectionConfig, IKeyboardPeripheralsConfig, EpubSettings, ScriptMode, WebPubNavigatorListeners, IWebPubPreferences, IWebPubDefaults, WebPubSettings, AudioNavigatorListeners, IAudioPreferences, IAudioDefaults } from '@readium/navigator'; import * as _readium_shared from '@readium/shared'; import { Publication, Locator, Link, Timeline } from '@readium/shared'; import * as React from 'react'; type cbb$2 = (ok: boolean) => void; interface EpubNavigatorLoadProps { container: HTMLDivElement | null; publication: Publication; listeners: EpubNavigatorListeners; positionsList?: Locator[]; initialPosition?: Locator; preferences?: IEpubPreferences; defaults?: IEpubDefaults; injectables?: IInjectablesConfig; contentProtection?: IContentProtectionConfig; keyboardPeripherals?: IKeyboardPeripheralsConfig; } declare const useEpubNavigator: () => { EpubNavigatorLoad: (config: EpubNavigatorLoadProps, cb: Function) => void; EpubNavigatorDestroy: (cb: Function) => void; goRight: (animated: boolean, callback: cbb$2) => void; goLeft: (animated: boolean, callback: cbb$2) => void; goBackward: (animated: boolean, callback: cbb$2) => void; goForward: (animated: boolean, callback: cbb$2) => void; goLink: (link: Link, animated: boolean, callback: cbb$2) => void; go: (locator: Locator, animated: boolean, callback: cbb$2) => void; navLayout: () => _readium_shared.Layout | undefined; currentLocator: () => Locator | undefined; previousLocator: () => Locator | null | undefined; nextLocator: () => Locator | null | undefined; currentPositions: () => number[] | null | undefined; canGoBackward: () => boolean | undefined; canGoForward: () => boolean | undefined; isScrollStart: () => boolean | undefined; isScrollEnd: () => boolean | undefined; preferencesEditor: _readium_navigator.EpubPreferencesEditor | undefined; getSetting: (settingKey: K) => EpubSettings[K]; submitPreferences: (preferences: IEpubPreferences) => Promise; getCframes: () => (_readium_navigator.FXLFrameManager | _readium_navigator.FrameManager | undefined)[] | undefined; getScriptMode: () => ScriptMode | undefined; }; type cbb$1 = (ok: boolean) => void; interface WebPubNavigatorLoadProps { container: HTMLDivElement | null; publication: Publication; listeners: WebPubNavigatorListeners; initialPosition?: Locator; preferences?: IWebPubPreferences; defaults?: IWebPubDefaults; injectables?: IInjectablesConfig; contentProtection?: IContentProtectionConfig; keyboardPeripherals?: IKeyboardPeripheralsConfig; } declare const useWebPubNavigator: () => { WebPubNavigatorLoad: (config: WebPubNavigatorLoadProps, cb: Function) => void; WebPubNavigatorDestroy: (cb: Function) => void; goRight: (animated: boolean, callback: cbb$1) => void; goLeft: (animated: boolean, callback: cbb$1) => void; goBackward: (animated: boolean, callback: cbb$1) => void; goForward: (animated: boolean, callback: cbb$1) => void; goLink: (link: Link, animated: boolean, callback: cbb$1) => void; go: (locator: Locator, animated: boolean, callback: cbb$1) => void; currentLocator: () => Locator | undefined; previousLocator: () => Locator | null | undefined; nextLocator: () => Locator | null | undefined; currentPositions: () => number[] | null | undefined; canGoBackward: () => boolean | undefined; canGoForward: () => boolean | undefined; isScrollStart: () => boolean | undefined; isScrollEnd: () => boolean | undefined; preferencesEditor: _readium_navigator.WebPubPreferencesEditor | undefined; getSetting: (settingKey: K) => WebPubSettings[K]; submitPreferences: (preferences: IWebPubPreferences) => Promise; getCframes: () => (_readium_navigator.WebPubFrameManager | undefined)[] | undefined; getScriptMode: () => ScriptMode | undefined; }; interface AudioSettings { volume: number; playbackRate: number; preservePitch: boolean; skipBackwardInterval: number; skipForwardInterval: number; skipInterval: number; pollInterval: number; autoPlay: boolean; enableMediaSession: boolean; } interface AudioSettingsCache { settings: AudioSettings; } declare const useAudioSettingsCache: (volume: number, playbackRate: number, preservePitch: boolean, skipBackwardInterval: number, skipForwardInterval: number, skipInterval: number, pollInterval: number, autoPlay: boolean, enableMediaSession: boolean) => React.RefObject; type cbb = (ok: boolean) => void; interface AudioNavigatorLoadProps { publication: Publication; listeners: AudioNavigatorListeners; initialPosition?: Locator; preferences?: IAudioPreferences; defaults?: IAudioDefaults; contentProtection?: IContentProtectionConfig; keyboardPeripherals?: IKeyboardPeripheralsConfig; audioContext?: AudioContext; } declare const useAudioNavigator: () => { AudioNavigatorLoad: (config: AudioNavigatorLoadProps, cb: Function) => void; AudioNavigatorDestroy: (cb: Function) => void; play: () => void; pause: () => void; stop: () => void; seek: (time: number) => void; jump: (seconds: number) => void; skipForward: () => void; skipBackward: () => void; go: (locator: Locator, animated: boolean, callback: cbb) => void; goLink: (link: Link, animated: boolean, callback: cbb) => void; goForward: (animated: boolean, callback: cbb) => void; goBackward: (animated: boolean, callback: cbb) => void; currentLocator: () => Locator | undefined; canGoBackward: () => boolean; canGoForward: () => boolean; isTrackStart: () => boolean; isTrackEnd: () => boolean; isPlaying: () => boolean; isPaused: () => boolean; duration: () => number; currentTime: () => number; preferencesEditor: _readium_navigator.AudioPreferencesEditor | undefined; remotePlayback: RemotePlayback | undefined; getSetting: (settingKey: K) => number | boolean | undefined; submitPreferences: (preferences: IAudioPreferences) => Promise; timeline: () => Timeline | undefined; }; export { type AudioNavigatorLoadProps as A, type EpubNavigatorLoadProps as E, type WebPubNavigatorLoadProps as W, useEpubNavigator as a, useWebPubNavigator as b, type AudioSettings as c, type AudioSettingsCache as d, useAudioSettingsCache as e, useAudioNavigator as u };