import { PresentationSnapshot } from 'pptx-viewer-shared'; export interface PresenterSessionOptions { getSource: () => Uint8Array | ArrayBuffer | null | undefined; getSlideIndex: () => number; onAudienceSlide: (index: number) => void; onAudienceExit: () => void; } export declare class PresenterSession { private readonly options; audienceOpen: boolean; snapshot: PresentationSnapshot; readonly audienceSessionId: string | null; readonly isAudience: boolean; private channel; private audienceWindow; private presenterSessionId; private sequence; constructor(options: PresenterSessionOptions); connect(): void; openAudience(): boolean; /** * Move the console to the audience screen and the audience display to this * one (the presenter console's "Swap Displays"). Resolves `false` when there * is no audience window, when the browser withholds the Window Management * permission, or when both windows already sit on the same screen, which is * why the strip's control is disabled until a display is open. */ swapDisplays(): Promise; sync(slideIndex?: number): void; updateSnapshot(patch: Partial): void; closeAudience(): void; dispose(): void; private getChannel; } //# sourceMappingURL=presenter-session.svelte.d.ts.map