import EventEmitter from 'eventemitter3'; import { ApplicationInstanceType, ForgeWindow } from '@netless/forge-room'; import { ForgeSlidePermissionFlag, ForgeSlidePermissions } from './ForgeSlidePermession'; export interface SlideEvents { /** * 当用户权限变更时触发 * @param { string } userId 对应 userId * @param { ForgeSlidePermissionFlag[] } flags 当前权限列表 * @param { number } value 权限值 */ permissionChange: (userId: string, flags: ForgeSlidePermissionFlag[], value: number) => void; /** * 开始渲染页面时触发 * @param {number} pageIndex 页面索引 */ renderStart: (pageIndex: number) => void; /** * 页面渲染完成时触发 * @param {number} pageIndex 页面索引 */ renderEnd: (pageIndex: number) => void; /** * 主序列动画完成时触发 * @param {number} animateIndex 主动画索引 */ mainSeqStepEnd: (animateIndex: number) => void; /** * 主序列动画开始时触发 * @param {number} animateIndex 主动画索引 */ mainSeqStepStart: (animateIndex: number) => void; } export declare class SlideForge extends EventEmitter implements ApplicationInstanceType { readonly view: HTMLDivElement; readonly permissions: ForgeSlidePermissions; readonly footView: HTMLDivElement; readonly sideBarView: HTMLDivElement; readonly window: ForgeWindow | undefined; /** * 当前页面索引, 从 0 开始 */ readonly pageIndex: number; /** * 总页数 */ readonly pageCount: number; /** * 切换到参数指定页面, index 从 0 开始 * @param {number} index 页面索引 */ goto: (index: number) => void; /** * 下一步, 如果已经是本页的最后一步, 则切换到下一页 */ nextStep: () => void; /** * 上一步, 如果已经是本页的第一步, 则切换到上一页 */ prevStep: () => void; /** * 下一页, 如果是最后一页, 则不执行任何操作 */ nextPage: () => void; /** * 上一页, 如果是第一页, 则不执行任何操作 */ prevPage: () => void; /** * 切换侧栏显示状态 */ sideBarToggle: () => void; /** * 获取预览图图片内容, base64 编码 * @param {number} index 页面索引 */ imgContent: (index: number) => Promise; /** * 获取预览图图片链接 * @param {number} index 页面索引 */ imgUrl: (index: number) => Promise; /** * 获取预览图图片尺寸 * @param {number} index 页面索引 */ imgSize: (index: number) => Promise<{ width: number; height: number; }>; /** * 冻结当前幻灯片, 释放资源 * @param {() => void} [callback] 冻结完成回调 */ frozen: (callback?: () => void) => void; /** * 解冻冻结的幻灯片, 重新获取资源 * @param {() => void} [callback] 解冻完成回调 */ release: (callback?: () => void) => void; } //# sourceMappingURL=Slide.d.ts.map