UNPKG

@polyv/white-board-sdk

Version:

white board sdk

1,485 lines (1,420 loc) 424 kB
// Generated by dts-bundle v0.7.3 // Dependencies for this module: // ../../../sdk/canvas2svg // ../../../sdk/@polyv/elog-sdk // ../../../sdk/tinycolor2 declare module '@polyv/white-board-sdk' { /** * @file 白板总入口 */ export * from '@polyv/white-board-sdk/utils/dom'; export * from '@polyv/white-board-sdk/export/appliance'; export * from '@polyv/white-board-sdk/export/behavior'; export * from '@polyv/white-board-sdk/export/bridge'; export * from '@polyv/white-board-sdk/export/console'; export * from '@polyv/white-board-sdk/export/core'; export * from '@polyv/white-board-sdk/export/cursor'; export * from '@polyv/white-board-sdk/export/plugin'; export * from '@polyv/white-board-sdk/export/service'; export * from '@polyv/white-board-sdk/export/shape-utils'; export * from '@polyv/white-board-sdk/export/shape'; export * from '@polyv/white-board-sdk/registers'; export * from '@polyv/white-board-sdk/ispring'; } declare module '@polyv/white-board-sdk/utils/dom' { export * from '@polyv/white-board-sdk/utils/dom/dom-query'; export * from '@polyv/white-board-sdk/utils/dom/types'; export * from '@polyv/white-board-sdk/utils/dom/utils'; } declare module '@polyv/white-board-sdk/export/appliance' { /** * @file 教具模块导出 */ export * from '@polyv/white-board-sdk/appliances/index'; export * from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; export * from '@polyv/white-board-sdk/appliances/arrow'; export { install as ArrowApplianceInstall } from '@polyv/white-board-sdk/appliances/arrow/install'; export * from '@polyv/white-board-sdk/appliances/choice'; export { install as ChoiceApplianceInstall } from '@polyv/white-board-sdk/appliances/choice/install'; export * from '@polyv/white-board-sdk/appliances/ellipse'; export { install as EllipseApplianceInstall } from '@polyv/white-board-sdk/appliances/ellipse/install'; export * from '@polyv/white-board-sdk/appliances/eraser'; export { install as EraserApplianceInstall } from '@polyv/white-board-sdk/appliances/eraser/install'; export * from '@polyv/white-board-sdk/appliances/free-line'; export { install as FreeLineApplianceInstall } from '@polyv/white-board-sdk/appliances/free-line/install'; export * from '@polyv/white-board-sdk/appliances/laser-pen'; export { install as LaserPenApplianceInstall } from '@polyv/white-board-sdk/appliances/laser-pen/install'; export * from '@polyv/white-board-sdk/appliances/move'; export { install as MoveApplianceInstall } from '@polyv/white-board-sdk/appliances/move/install'; export * from '@polyv/white-board-sdk/appliances/polygon'; export { install as PolygonApplianceInstall } from '@polyv/white-board-sdk/appliances/polygon/install'; export * from '@polyv/white-board-sdk/appliances/rect'; export { install as RectApplianceInstall } from '@polyv/white-board-sdk/appliances/rect/install'; export * from '@polyv/white-board-sdk/appliances/star'; export { install as StarApplianceInstall } from '@polyv/white-board-sdk/appliances/star/install'; export * from '@polyv/white-board-sdk/appliances/straight-line'; export { install as StraightLineApplianceInstall } from '@polyv/white-board-sdk/appliances/straight-line/install'; export * from '@polyv/white-board-sdk/appliances/text'; export { install as TextApplianceInstall } from '@polyv/white-board-sdk/appliances/text/install'; export * from '@polyv/white-board-sdk/appliances/triangle'; export { install as TriangleApplianceInstall } from '@polyv/white-board-sdk/appliances/triangle/install'; import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; /** * 全局教具安装器 */ export function GlobalApplianceInstall(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/export/behavior' { /** * @file 行为模块导出 */ export * from '@polyv/white-board-sdk/behaviors/index'; export * from '@polyv/white-board-sdk/behaviors/clear'; export { install as ClearBehaviorInstall } from '@polyv/white-board-sdk/behaviors/clear/install'; export * from '@polyv/white-board-sdk/behaviors/editor'; export { install as EditorBehaviorInstall } from '@polyv/white-board-sdk/behaviors/editor/install'; export * from '@polyv/white-board-sdk/behaviors/eraser'; export { install as EraserBehaviorInstall } from '@polyv/white-board-sdk/behaviors/eraser/install'; export * from '@polyv/white-board-sdk/behaviors/laser-pen'; export { install as LaserPenBehaviorInstall } from '@polyv/white-board-sdk/behaviors/laser-pen/install'; export * from '@polyv/white-board-sdk/behaviors/redo'; export { install as RedoBehaviorInstall } from '@polyv/white-board-sdk/behaviors/redo/install'; export * from '@polyv/white-board-sdk/behaviors/undo'; export { install as UndoBehaviorInstall } from '@polyv/white-board-sdk/behaviors/undo/install'; import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; /** * 全局行为安装器 */ export function GlobalBehaviorInstall(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/export/bridge' { export * from '@polyv/white-board-sdk/bridge/white-bridge'; export { IframeMessage } from '@polyv/white-board-sdk/core/enums/ppt-enum'; export { IframeMessageData, IframeMessageParam } from '@polyv/white-board-sdk/core/interfaces/ppt'; } declare module '@polyv/white-board-sdk/export/console' { export * from '@polyv/white-board-sdk/console/fn'; export * from '@polyv/white-board-sdk/console/enum'; export * from '@polyv/white-board-sdk/console/elog'; } declare module '@polyv/white-board-sdk/export/core' { export * from '@polyv/white-board-sdk/core/WhiteBoard'; export * from '@polyv/white-board-sdk/core/basic'; export * from '@polyv/white-board-sdk/core/board'; export * from '@polyv/white-board-sdk/core/canvas'; export * from '@polyv/white-board-sdk/core/config'; export * from '@polyv/white-board-sdk/core/consts'; export * from '@polyv/white-board-sdk/core/controller'; export * from '@polyv/white-board-sdk/core/enums'; export * from '@polyv/white-board-sdk/core/event'; export * from '@polyv/white-board-sdk/core/interfaces'; export * from '@polyv/white-board-sdk/core/tools'; export * from '@polyv/white-board-sdk/core/utils/color'; export * from '@polyv/white-board-sdk/core/utils/hight-throttle'; export * from '@polyv/white-board-sdk/core/utils/image-loader'; export { default as C2S } from 'canvas2svg'; } declare module '@polyv/white-board-sdk/export/cursor' { /** * @file 光标模块导出 */ export * from '@polyv/white-board-sdk/cursors/index'; export * from '@polyv/white-board-sdk/cursors/arrow'; export { install as ArrowCursorAdapterInstall } from '@polyv/white-board-sdk/cursors/arrow/install'; export * from '@polyv/white-board-sdk/cursors/crosshair'; export { install as CrosshairCursorAdapterInstall } from '@polyv/white-board-sdk/cursors/crosshair/install'; export * from '@polyv/white-board-sdk/cursors/eraser'; export { install as EraserCursorAdapterInstall } from '@polyv/white-board-sdk/cursors/eraser/install'; export * from '@polyv/white-board-sdk/cursors/laser-pen'; export { install as LaserPenCursorAdapterInstall } from '@polyv/white-board-sdk/cursors/laser-pen/install'; export * from '@polyv/white-board-sdk/cursors/pencil'; export { install as PencilCursorAdapterInstall } from '@polyv/white-board-sdk/cursors/pencil/install'; export * from '@polyv/white-board-sdk/cursors/text'; export { install as TextCursorAdapterInstall } from '@polyv/white-board-sdk/cursors/text/install'; import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; /** * 全局光标适配器安装器 */ export function GlobalCursorAdapterInstall(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/export/plugin' { /** * @file 插件模块导出 */ export * from '@polyv/white-board-sdk/plugins/doc-record-plugin'; export * from '@polyv/white-board-sdk/plugins/navigation-plugin'; export * from '@polyv/white-board-sdk/plugins/plugin-ctor/WhiteBoardPlugin'; export * from '@polyv/white-board-sdk/plugins/thumbnail-plugin'; export * from '@polyv/white-board-sdk/plugins/tool-plugin'; } declare module '@polyv/white-board-sdk/export/service' { /** * @file 服务模块导出 */ export * from '@polyv/white-board-sdk/service/_controls'; export * from '@polyv/white-board-sdk/service/assets'; export * from '@polyv/white-board-sdk/service/service-core'; export * from '@polyv/white-board-sdk/service/live-start-service'; export * from '@polyv/white-board-sdk/service/live-watch-service'; } declare module '@polyv/white-board-sdk/export/shape-utils' { export * from '@polyv/white-board-sdk/core/utils/shape-utils'; } declare module '@polyv/white-board-sdk/export/shape' { /** * @file 图形模块导出 */ export * from '@polyv/white-board-sdk/shapes/index'; export * from '@polyv/white-board-sdk/shapes/arrow'; export { install as ArrowShapeInstall } from '@polyv/white-board-sdk/shapes/arrow/install'; export * from '@polyv/white-board-sdk/shapes/ellipse'; export { install as EllipseShapeInstall } from '@polyv/white-board-sdk/shapes/ellipse/install'; export * from '@polyv/white-board-sdk/shapes/free-line'; export { install as FreeLineShapeInstall } from '@polyv/white-board-sdk/shapes/free-line/install'; export * from '@polyv/white-board-sdk/shapes/image'; export { install as ImageShapeInstall } from '@polyv/white-board-sdk/shapes/image/install'; export * from '@polyv/white-board-sdk/shapes/laser-pen'; export { install as LaserPenShapeInstall } from '@polyv/white-board-sdk/shapes/laser-pen/install'; export * from '@polyv/white-board-sdk/shapes/polygon'; export { install as PolygonShapeInstall } from '@polyv/white-board-sdk/shapes/polygon/install'; export * from '@polyv/white-board-sdk/shapes/rect'; export { install as RectShapeInstall } from '@polyv/white-board-sdk/shapes/rect/install'; export * from '@polyv/white-board-sdk/shapes/star'; export { install as StarShapeInstall } from '@polyv/white-board-sdk/shapes/star/install'; export * from '@polyv/white-board-sdk/shapes/straight-line'; export { install as StraightLineShapeInstall } from '@polyv/white-board-sdk/shapes/straight-line/install'; export * from '@polyv/white-board-sdk/shapes/text'; export { install as TextShapeInstall } from '@polyv/white-board-sdk/shapes/text/install'; export * from '@polyv/white-board-sdk/shapes/triangle'; export { install as TriangleShapeInstall } from '@polyv/white-board-sdk/shapes/triangle/install'; import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; /** * 全局图形安装器 */ export function GlobalShapeInstall(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/registers' { import { registerAppliance } from '@polyv/white-board-sdk/appliances/index'; import { registerBehavior } from '@polyv/white-board-sdk/behaviors/index'; import { registerCursorAdapter } from '@polyv/white-board-sdk/cursors/index'; import { registerShape } from '@polyv/white-board-sdk/shapes/index'; /** * 白板注册器类型 */ export interface WhiteBoardRegisters { use: typeof use; /** 注册全局教具 */ registerAppliance: typeof registerAppliance; /** 注册全局行为 */ registerBehavior: typeof registerBehavior; /** 注册全局光标适配器 */ registerCursorAdapter: typeof registerCursorAdapter; /** 注册全局图形 */ registerShape: typeof registerShape; } /** * 白板注册器 */ export const globalRegisters: WhiteBoardRegisters; /** * 安装方法类型 */ export type WhiteBoardInstaller = (registers: WhiteBoardRegisters) => unknown; /** * 安装 * @param installs 安装方法数组 */ export function use(installs?: WhiteBoardInstaller[]): WhiteBoardRegisters; } declare module '@polyv/white-board-sdk/ispring' { export * from '@polyv/white-board-sdk/ispring/types'; export * from '@polyv/white-board-sdk/ispring/bridge-ispring'; } declare module '@polyv/white-board-sdk/utils/dom/dom-query' { import { ClientSize, DomQuerySelector, EventCallback } from '@polyv/white-board-sdk/utils/dom/types'; import { AnyFunc } from '@polyv/white-board-sdk/core'; /** * dom 的查询器 * @class */ export class DomQuery<T extends DomQuerySelector = DomQuerySelector> { /** 选择器 */ selector: T; /** 节点列表 */ elems: HTMLElement[]; constructor(selector: T); /** * 遍历选择器中的元素,回调函数返回 false 时终止遍历 * @param callback 回调函数 */ forEach(callback: (elem: HTMLElement, index?: number) => boolean | unknown): DomQuery<T>; /** * 在开头插入子元素 * @param children 子节点 */ prepend(children: DomQuerySelector): DomQuery<T>; /** * 在末端插入子节点 * @param children 子节点 */ append(children: DomQuerySelector): DomQuery<T>; /** * 设置 / 获取 属性 * @param key key * @param val 属性值 */ attr(key: string): string | null; attr(key: string, val: string): DomQuery<T>; attr(key: Record<string, string>): DomQuery<T>; /** * 删除属性 * @param key key */ removeAttr(key: string): DomQuery<T>; /** * 是否有传入的 css class * @param className 样式类名 */ hasClass(className?: string): boolean; /** * 添加 css 的 className * @param className 样式类名或列表 */ addClass(className?: string | string[]): DomQuery<T>; /** * 移除 css 的 className * @param className 样式类名或列表 */ removeClass(className?: string | string[]): DomQuery<T>; /** * 设置 / 获取元素的 html * @param val html */ html(): string; html(val: string | number): DomQuery<T>; /** * 修改 css * @param key css key * @param val css value */ css(key: string, val: string | number): DomQuery<T>; css(key: Record<string, string | number>): DomQuery<T>; /** * 监听事件 * @param event 事件名称 * @param callback 回调事件 * @param context this 指向 */ on<K extends keyof HTMLElementEventMap>(event: K, callback: EventCallback<K>, context?: unknown, options?: boolean | AddEventListenerOptions): DomQuery<T>; /** * 移除监听事件 * @param event 事件名称 * @param callback 回调事件,不传则为移除所有事件 */ off(event: string, callback?: any): DomQuery<T>; /** * 绑定外部点击事件 * @param fn 回调函数 * @param context this 上下文 */ bindClickOutSide(fn: (event: MouseEvent) => unknown, context?: unknown): this; /** * 取消所有外部点击事件 */ clearClickOutSide(): this; /** * 根据选择器查询节点 * @param selector 选择器 */ find(selector: string): DomQuery; value(): string; /** * 获取父元素 */ parent(): DomQuery | undefined; /** * 移除当前节点 */ remove(): DomQuery<T>; /** * 获取节点的 scrollTop */ scrollTop(): number; /** * 获取节点的 scrollLeft */ scrollLeft(): number; /** * 获取节点的 DOMRect */ getBoundingClientRect(): DOMRect; /** * 获取节点的 clientWidth 和 clientHeight */ getClientSize(): ClientSize; /** * 记录节点的 clientWidth 和 clientHeight */ recordClientSize(): void; /** * 触发聚焦 */ triggerFocus(): this; /** * 触发失焦 */ triggerBlur(): this; /** * 触发点击 */ triggerClick(): this; /** * 显示节点 * @param style 显示的样式 */ show(style?: string): this; /** * 隐藏节点 */ hide(): this; /** * 禁用节点的拖拽 */ disableDrag(): this; /** * 禁用节点的选择 */ disableSelect(): this; /** * 禁用节点的右键菜单栏 */ disableContextMenu(): this; /** * 绑定尺寸变化事件 * @param fn 回调方法 */ bindSizeSensor(fn: AnyFunc): this; /** * 清除尺寸变化事件 */ clearSizeSensor(): this; /** * 当前元素,是否包含某个子元素 * @param $child 子元素 */ contains($child: DomQuerySelector): boolean; /** * 如果节点是 HTMLInputElem,则返回 files */ files(): FileList | null; get length(): number; } /** * 创建 dom 的查询器 * @param arg 选择器 * @returns 查询器 */ export function $<T extends DomQuerySelector>(selector: DomQuerySelector): DomQuery<T>; export namespace $ { var b: (className: string) => string; } export default $; } declare module '@polyv/white-board-sdk/utils/dom/types' { import { DomQuery } from '@polyv/white-board-sdk/utils/dom/dom-query'; /** * Dom 选择器 */ export type DomQuerySelector = string | DomQuery | Document | Element | Element[] | HTMLElement | HTMLElement[] | Node | NodeList | HTMLCollection | typeof window; /** * 回调事件类型 */ export type EventCallback<K extends keyof HTMLElementEventMap> = (event: HTMLElementEventMap[K]) => unknown; /** * 代理对象 */ export interface AgentCallbackItem<K extends keyof HTMLElementEventMap = any> { event: string; callback: EventCallback<K>; agentCallback: EventCallback<K>; } /** * dom 节点 client 尺寸信息 */ export type ClientSize = { width: number; height: number; }; global { interface HTMLElement { /** 编辑器代理对象存储列表 */ $$DomQueryAgentCallbackStore?: AgentCallbackItem[]; } } } declare module '@polyv/white-board-sdk/utils/dom/utils' { /** * 判断目标是否为 DOM 列表 * @param selector 选择器 */ export function isDomList<T extends HTMLCollection | NodeList>(selector: unknown): selector is T; /** * 过滤目标数组中的 HTMLElement 对象 * @param selector 目标 */ export function filterHTMLElementList(selector: unknown): HTMLElement[]; /** * 根据 html 字符串创建 elem * @param str html字符串 */ export function createElemsByHtmlString(str: string): HTMLElement[]; /** * 封装 querySelectorAll * @param selector 选择器 */ export function querySelectorAll(selector: string): HTMLElement[]; /** * 将 dom 的 style 拆分成 `['width:100px']` 的数组格式 * @param styleArr css */ export function styleArrTrim(style: string | string[]): string[]; } declare module '@polyv/white-board-sdk/appliances/index' { import { ApplianceCtor } from '@polyv/white-board-sdk/appliances/types'; export * from '@polyv/white-board-sdk/appliances/types'; /** * 已注册了的教具 */ export const registerApplianceList: Set<ApplianceCtor>; /** * 注册全局教具 * @param applianceName 教具名称 * @param Ctor 教具类 */ export function registerAppliance(Ctor: ApplianceCtor | ApplianceCtor[]): void; } declare module '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance' { import { WhiteBoard } from '@polyv/white-board-sdk/core/WhiteBoard'; import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Shape } from '@polyv/white-board-sdk/core'; /** * 监听类型 */ type ListenType = 'on' | 'off'; /** * 教具类 * @class */ export class Appliance { whiteBoard: WhiteBoard; /** * 回调事件是否需要过滤网格 */ protected filterGrid: boolean; /** * 绘制持续时间 */ protected durationTime: number; /** * 绘制持续时间定时器 */ protected durationTimer?: number; constructor(whiteBoard: WhiteBoard); /** * 启动记录持续时间定时器 * @param shape 作用的图形 */ protected startDurationTimer(shape?: Shape): void; /** * 关闭记录持续时间定时器 */ protected closeDurationTimer(): void; /** * 持续时间修改钩子函数 */ protected durationTimerChange(): void; /** * 当前教具被激活的 hook */ activated(): void; /** * 当前教具取消激活的 hook */ cancelActivate(): void; /** * 设置 / 取消 监听 drawDown 事件 * @param type 类型 */ protected listenDragDownEvent(type?: ListenType): this; /** * drawDown 中间函数 */ protected _triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; /** * 触发 drawDown 的 hook */ protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; /** * 设置 / 取消 监听 drawMove 事件 * @param type 类型 */ protected listenDragMoveEvent(type?: ListenType): this; /** * drawMove 中间函数 */ protected _triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; /** * 触发 drawMove 的 hook */ protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; /** * 设置 / 取消 监听 drawUp 事件 * @param type 类型 */ protected listenDragUpEvent(type?: ListenType): this; /** * drawUp 中间函数 */ protected _triggerDragUp(params: SubParamsType<WhiteEvents.TriggeredDrawUp>): void; /** * 触发 drawUp 的 hook */ protected triggerDragUp(params: SubParamsType<WhiteEvents.TriggeredDrawUp>): void; /** * 设置 / 取消 监听 canvasClick 事件 */ protected listenCanvasClick(type?: ListenType): this; /** * canvasClick 中间函数 */ protected _triggerCanvasClick(params: SubParamsType<WhiteEvents.TriggeredCanvasClick>): void; /** * 触发 canvasClick 的 hook */ protected triggerCanvasClick(params: SubParamsType<WhiteEvents.TriggeredCanvasClick>): void; protected listenCanvasMouseMove(type?: ListenType): this; /** * canvasMove 中间函数 */ protected _triggerCanvasMouseMove(params: SubParamsType<WhiteEvents.TriggeredCanvasMouseMove>): void; /** * 触发 canvasMove 的 hook */ protected triggerCanvasMouseMove(params: SubParamsType<WhiteEvents.TriggeredCanvasMouseMove>): void; protected listenCanvasMouseOut(type?: ListenType): this; protected triggerCanvasMouseOut(): void; protected listenDBFingerMove(type?: ListenType): this; /** * 触发 dbFingerMove 的 hook */ protected triggerDBFingerMove(params: SubParamsType<WhiteEvents.TriggeredDBFingerMove>): void; } export {}; } declare module '@polyv/white-board-sdk/appliances/arrow' { import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; import type { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core'; /** * 箭头教具类 * @class */ export class ArrowAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/arrow/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/choice' { import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; /** * 选择教具类 * @class */ export class ChoiceAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; protected triggerCanvasMouseMove(params: SubParamsType<WhiteEvents.TriggeredCanvasMouseMove>): void; protected triggerCanvasClick(): void; get nearDistance(): number; } } declare module '@polyv/white-board-sdk/appliances/choice/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/ellipse' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 椭圆教具类 * @class */ export class EllipseAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/ellipse/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/eraser' { import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; /** * 橡皮擦教具类 * @class */ export class EraserAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; protected filterGrid: boolean; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; } } declare module '@polyv/white-board-sdk/appliances/eraser/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/free-line' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 自由画笔教具类 * @class */ export class FreeLineAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; cursorHiddenTime: number; protected filterGrid: boolean; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/free-line/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/laser-pen' { import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core'; /** * 激光笔教具类 * @class */ export class LaserPenAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; cursorHiddenTime: number; filterGrid: boolean; activated(): void; cancelActivate(): void; protected triggerCanvasMouseMove(params: SubParamsType<WhiteEvents.TriggeredCanvasMouseMove>): void; protected triggerCanvasMouseOut(): void; } } declare module '@polyv/white-board-sdk/appliances/laser-pen/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/move' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 移动教具类 * @class */ export class MoveAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; protected filterGrid: boolean; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/move/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/polygon' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 多边形教具类 * @class */ export class PolygonAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; /** 与开始点的临近值 */ nearDistance: number; activated(): void; cancelActivate(): void; protected triggerCanvasClick(params: SubParamsType<WhiteEvents.TriggeredCanvasClick>): void; protected triggerCanvasMouseMove(params: SubParamsType<WhiteEvents.TriggeredCanvasMouseMove>): void; } } declare module '@polyv/white-board-sdk/appliances/polygon/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/rect' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 矩形教具类 * @class */ export class RectAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; cursorHiddenTime: number; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/rect/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/star' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 星形教具 * @class */ export class StarAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/star/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/straight-line' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 直线教具类 * @class */ export class StraightLineAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/straight-line/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/text' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 文本教具类 * @class */ export class TextAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerCanvasClick(params: SubParamsType<WhiteEvents.TriggeredCanvasClick>): void; } } declare module '@polyv/white-board-sdk/appliances/text/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/appliances/triangle' { import { SubParamsType, WhiteEvents } from '@polyv/white-board-sdk/core/event'; import { Appliance } from '@polyv/white-board-sdk/appliances/appliance-ctor/Appliance'; import { ApplianceTarget } from '@polyv/white-board-sdk/appliances/types'; /** * 三角形教具类 * @class */ export class TriangleAppliance extends Appliance implements ApplianceTarget { static applianceName: string; applianceName: string; cursorName: string; activated(): void; cancelActivate(): void; protected triggerDragDown(params: SubParamsType<WhiteEvents.TriggeredDrawDown>): void; protected triggerDragMove(params: SubParamsType<WhiteEvents.TriggeredDrawMove>): void; protected triggerDragUp(): void; } } declare module '@polyv/white-board-sdk/appliances/triangle/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(register: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/behaviors/index' { import { BehaviorCtor, BehaviorMatchStore } from '@polyv/white-board-sdk/core/interfaces/behavior'; /** * 全局行为匹配器 */ export const globalBehaviorMatchs: BehaviorMatchStore; /** * 注册全局行为类 * @param Ctor 行为类 */ export function registerBehavior(Ctor: BehaviorCtor): void; } declare module '@polyv/white-board-sdk/behaviors/clear' { import { Behavior } from '@polyv/white-board-sdk/core/tools/behavior'; import { ClearBehaviorBaseData, ClearBehaviorConfig } from '@polyv/white-board-sdk/behaviors/clear/types'; export * from '@polyv/white-board-sdk/behaviors/clear/types'; /** * 清空行为类 * @class * @description 该类为核心自动注册的行为类,但可重写该类并进行覆盖 */ export class ClearBehavior extends Behavior { static behaviorName: string; behaviorName: string; readonly clearIds: string[]; constructor(config: ClearBehaviorConfig); /** * 获取清空行为基础数据 */ getBaseData(): ClearBehaviorBaseData; implement(): void; } } declare module '@polyv/white-board-sdk/behaviors/clear/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(registers: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/behaviors/editor' { import { BaseChangeData, EditMoveDataType, EditOperation, ShapeSeatZoomData, TextChangeData, ZIndexChangeData } from '@polyv/white-board-sdk/core'; import { Behavior } from '@polyv/white-board-sdk/core/tools/behavior'; import { EditorBehaviorBaseData, EditorBehaviorConfig } from '@polyv/white-board-sdk/behaviors/editor/types'; export * from '@polyv/white-board-sdk/behaviors/editor/types'; /** * 编辑行为类 * @class * @description 该类为核心自动注册的行为类,但可重写该类并进行覆盖 */ export class EditorBehavior extends Behavior { static behaviorName: string; behaviorName: string; isActionStackItem: boolean; readonly editIds: string[]; readonly editOperation: EditOperation; readonly moveData?: EditMoveDataType; readonly seatZoomData?: ShapeSeatZoomData; readonly zIndexChangeData?: ZIndexChangeData; readonly textChangeData?: TextChangeData; readonly baseChangeData?: Record<string, BaseChangeData>; constructor(config: EditorBehaviorConfig); /** * 获取编辑行为基础数据 */ getBaseData(): EditorBehaviorBaseData; implement(): void; undo(): void; redo(): void; } } declare module '@polyv/white-board-sdk/behaviors/editor/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(registers: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/behaviors/eraser' { import { Behavior } from '@polyv/white-board-sdk/core/tools/behavior'; import { EraserBehaviorBaseData, EraserBehaviorConfig } from '@polyv/white-board-sdk/behaviors/eraser/types'; export * from '@polyv/white-board-sdk/behaviors/eraser/types'; /** * 橡皮擦行为类 * @class * @description 该类为核心自动注册的行为类,但可重写该类并进行覆盖 */ export class EraserBehavior extends Behavior { static behaviorName: string; behaviorName: string; isActionStackItem: boolean; readonly delIds: string[]; constructor(config: EraserBehaviorConfig); /** * 获取橡皮擦行为基础数据 */ getBaseData(): EraserBehaviorBaseData; implement(): void; undo(): void; redo(): void; } } declare module '@polyv/white-board-sdk/behaviors/eraser/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(registers: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/behaviors/laser-pen' { import { Behavior } from '@polyv/white-board-sdk/core/tools/behavior'; import { LaserPenBehaviorBaseData, LaserPenBehaviorConfig } from '@polyv/white-board-sdk/behaviors/laser-pen/types'; export * from '@polyv/white-board-sdk/behaviors/laser-pen/types'; export class LaserPenBehavior extends Behavior { static behaviorName: string; behaviorName: string; constructor(config: LaserPenBehaviorConfig); /** * 获取激光笔行为基础数据 */ getBaseData(): LaserPenBehaviorBaseData; implement(): void; } } declare module '@polyv/white-board-sdk/behaviors/laser-pen/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(registers: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/behaviors/redo' { import { Behavior } from '@polyv/white-board-sdk/core/tools/behavior'; import { RedoBehaviorBaseData, RedoBehaviorConfig } from '@polyv/white-board-sdk/behaviors/redo/types'; export * from '@polyv/white-board-sdk/behaviors/redo/types'; /** * 重做行为类 * @class * @description 该类为核心自动注册的行为类,但可重写该类并进行覆盖 */ export class RedoBehavior extends Behavior { static behaviorName: string; behaviorName: string; readonly redoIds: string[]; constructor(config: RedoBehaviorConfig); /** * 获取重做行为基础数据 */ getBaseData(): RedoBehaviorBaseData; implement(): void; } } declare module '@polyv/white-board-sdk/behaviors/redo/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(registers: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/behaviors/undo' { import { Behavior } from '@polyv/white-board-sdk/core/tools/behavior'; import { UndoBehaviorBaseData, UndoBehaviorConfig } from '@polyv/white-board-sdk/behaviors/undo/types'; export * from '@polyv/white-board-sdk/behaviors/undo/types'; /** * 撤回行为类 * @class * @description 该类为核心自动注册的行为类,但可重写该类并进行覆盖 */ export class UndoBehavior extends Behavior { static behaviorName: string; behaviorName: string; /** * 被撤回的标识 id */ readonly undoIds: string[]; constructor(config: UndoBehaviorConfig); /** * 获取撤回行为基础数据 */ getBaseData(): UndoBehaviorBaseData; implement(): void; } } declare module '@polyv/white-board-sdk/behaviors/undo/install' { import { WhiteBoardRegisters } from '@polyv/white-board-sdk/registers'; export function install(registers: WhiteBoardRegisters): void; } declare module '@polyv/white-board-sdk/bridge/white-bridge' { import 'url-search-params-polyfill'; import { IframeMessage, IframeMessageData, IframeMessageParam } from '@polyv/white-board-sdk/bridge'; /** * 动画 PPT 的桥接器 * @class */ export class WhiteBridge { /** * 当前页面的链接参数处理器 */ protected queryParams: URLSearchParams; constructor(); /** * 连接桥接器 * @api */ connectBridge(): void; /** * 断开桥接器连接 * @api */ disconnectBridge(): void; /** * 发送消息到父窗口中 * @api * @param data 数据 */ sendMessageToParent(data: IframeMessageData<IframeMessage>): void; /** * 调整显示视图显示对象的大小 * @api * @hook */ resize(data?: IframeMessageParam[IframeMessage.resize]): void; /** * 切换到指定页数钩子函数 * @api * @hook */ goToPage(data: IframeMessageParam[IframeMessage.goToPage]): void; /** * 切换到指定动画步骤钩子函数 * @api * @hook */ goToStepIndex(data: IframeMessageParam[IframeMessage.goToStepIndex]): void; /** * 切换到下一个动画步骤钩子函数 * @api * @hook */ goToNextStep(): void; /** * 切换到上一个动画步骤钩子函数 * @api * @hook */ goToPreviousStep(): void; /** * 默认的打开页 * @api */ get defaultCurrentPage(): number; /** * 默认的动画步骤 * @api */ get defaultStepIndex(): number; /** * 当前ppt标识 * @api */ get pptIdent(): string; /** * 获取白板版本号 * @api */ get version(): string; static checkNumber(target: unknown): boolean; } } declare module '@polyv/white-board-sdk/core/enums/ppt-enum' { /** * PPT类型 * @categroy Ppt */ export enum PptType { /** 图片PPT,文档以 img 标签的形式显示 */ Picture = "picture", /** 动画PPT,文档以 iframe 标签打开 animationUrl 地址的形式显示 */ Animation = "animation" } /** * 动画 PPT 的 iframe 通信事件枚举 * @enum */ export enum IframeMessage { /** * ispring 初始化完毕 * @direction `ispring` -> `sdk` */ ispringInited = "ispringInited", /** * 调整视图大小 * @direction `sdk` -> `ispring` */ resize = "resize", /** * 切换到下一个动画步骤 * @direction `sdk` -> `ispring` */ goToNextStep = "goToNextStep", /** * 切换到上一个动画步骤 * @direction `sdk` -> `ispring` */ goToPreviousStep = "goToPreviousStep", /** * 切换到指定页 */ goToPage = "goToPage", /** * 切换到指定步骤 */ goToStepIndex = "goToStepIndex" } } declare module '@polyv/white-board-sdk/core/interfaces/ppt' { import { IframeMessage, PptType } from '@polyv/white-board-sdk/core/enums/ppt-enum'; /** * PPT 图片数据 */ export interface PptImageData { /** 图片地址 */ url: string; /** 图片宽度 */ width: number; /** 图片高度 */ height: number; } /** * PPT JSON 数据结构 */ export interface PptJsonType { /** PPT 的唯一标识 */ autoId: string; /** 文件名 */ fileName?: string; /** PPT 类型,默认:{@link PptType.Picture} */ pptType?: PptType; /** 动画 PPT 地址,pptType 为 `PptType.ANIATION` 下生效 */ animationUrl?: string; /** 忽略当前页面协议,默认:false */ ignoreProtocol?: boolean; /** 文档宽度 */ width: number; /** 文档高度 */ height: number; /** PPT 的大图数据列表 */ pptImages: PptImageData[]; /** 缩略图地址列表 */ thumbnails: string[]; } export interface SlideStepItem { duration: number; startTime: number; } export interface SlideStepInfo { stepCount: number; stepDuration: number; stepList: SlideStepItem[]; } /** * 动画 PPT 的各通信参数类型 */ export type IframeMessageParam = { [IframeMessage.ispringInited]: { stepInfo: SlideStepInfo; }; [IframeMessage.resize]: undefined; [IframeMessage.goToPage]: { page: number; stepInfo?: SlideStepInfo; }; [IframeMessage.goToStepIndex]: { stepIndex: number; }; [IframeMessage.goToNextStep]: undefined; [IframeMessage.goToPreviousStep]: undefined; }; /** * 发送到动画 PPT 的 iframe 消息类型 */ export interface IframeMessageData<M extends IframeMessage> { /** PPT 身份标识 */ pptIdent?: string; /** 事件 */ message: M; /** 事件的参数 */ params: IframeMessageParam[M]; } /** * openPpt 方法参数类型 */ export interface OpenPptParams { /** PPT JSON 数据 */ pptJson: PptJsonType; /** 打开后默认的当前页 */ currentPage: number; /** 打开后默认的动画步骤数 */ stepIndex: number; } /** * closePpt 方法参数类型 */ export interface ClosePptParams { /** 关闭后默认的当前页,默认:0 */ currentPage?: number; /** 关闭后的总页数,默认:1 */ totalPage?: number; /** 是否需要重置分页,默认:true */ resetPage?: boolean; } /** * 过滤动画 ppt 地址方法参数 */ export interface FilterPptUrlParams { /** ppt json 数据 */ pptJson: PptJsonType; /** 即将打开的动画 ppt 地址 */ url: string; } /** * 过滤动画 ppt 地址方法 */ export interface FilterPptUrlType { (params: FilterPptUrlParams): string; } } declare module '@polyv/white-board-sdk/console/fn' { export type ConsoleOptions = { /** 是否发送 elog,默认:true */ sendELog?: boolean; /** 是否打印到控制台 * @default * consoleLog - false * consoleInfo - false * consoleWarn - true * consoleError - true * getRejectError - true */ printConsole?: boolean; }; /** 打印前缀 */ export const LogPrefix = "[white-board-sdk]"; /** * 打印 log 信息 * @param title * @param content */ export function consoleLog(title: string, content: string, options?: ConsoleOptions): void; /** * 打印 info 信息 * @param title * @param content */ export function consoleInfo(title: string, content: string, options?: ConsoleOptions): void; /** * 打印 warn 信息 * @param title * @param content */ export function consoleWarn(title: string, content: string, options?: ConsoleOptions): void; /** * 打印 error 信息 * @param title * @param content */ export function consoleError(title: string, content: string, options?: ConsoleOptions): void; /** * 获取 Promise 时 reject 的异常对象 * @param title * @param content */ export function getRejectError(title: string, content: string, options?: ConsoleOptions): Error; } declare module '@polyv/white-board-sdk/console/enum' { /** * 信息类型 */ export enum ConsoleType { /** 代码流程信息 */ Log = "log", /** 业务信息 */ Info = "info", /** 警告信息 */ Warn = "warn", /** 错误信息 */ Error = "error" } } declare module '@polyv/white-board-sdk/console/elog' { /** * @file elog 封装 */ import { ELog, ViewerInfo as ELogViewerInfo } from '@polyv/elog-sdk'; import { ConsoleType } from '@polyv/white-board-sdk/console/enum'; export const logger: ELog; /** * 设置日志的频道号 * @param channelId 频道号 */ export const setLoggerChannelId: (channelId: string) => void; /** * 设置日志的用户信息 * @param viewerInfo 用户信息 */ export const setLoggerUserInfo: (viewerInfo: ELogViewerInfo) => void; export const sendELog: (type: ConsoleType, msg: string, send?: boolean) => void; export default logger; } declare module '@polyv/white-board-sdk/core/WhiteBoard' { import { registerAppliance } from '@polyv/white-board-sdk/appliances'; import { registerBehavior } from '@polyv/white-board-sdk/behaviors'; import { registerCursorAdapter } from '@polyv/white-board-sdk/cursors'; import { use } from '@polyv/white-board-sdk/registers'; import { registerShape } from '@polyv/white-board-sdk/shapes'; import { $, DomQuery, DomQuerySelector } from '@polyv/white-board-sdk/utils/dom'; import { Board, DrawBoardParams } from '@polyv/white-boar