danmu
Version:
Flexible, cross-platform, powerful danmu library.
189 lines (188 loc) • 4.68 kB
TypeScript
import { FacileDanmaku, FacileOptions } from './facile';
import type { Position, DanmakuType, DanmakuPlugin } from '../types';
export interface FlexibleOptions<T> extends FacileOptions<T> {
position?: Position;
}
export declare class FlexibleDanmaku<T> extends FacileDanmaku<T> {
_options: FlexibleOptions<T>;
position: Position;
type: DanmakuType;
constructor(_options: FlexibleOptions<T>);
/**
* @internal
*/
_getSpeed(): number;
/**
* @internal
*/
_setOff(): Promise<void>;
/**
* @internal
*/
_setStartStatus(): void;
/**
* @internal
*/
_updatePosition(p: Partial<Position>): void;
/**
* @internal
*/
_getMovePercent(useInitData?: boolean): number;
/**
* @internal
*/
_getMoveDistance(): number;
/**
* @internal
*/
_format(): void;
pause(_flag?: Symbol): void;
resume(_flag?: Symbol): void;
remove(pluginName: string): void;
use(
plugin: DanmakuPlugin<T> | ((danmaku: this) => DanmakuPlugin<T>),
): Partial<
Pick<
import('hooks-plugin').Plugin<
{
hide: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>],
null,
void
>;
show: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>],
null,
void
>;
pause: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>],
null,
void
>;
resume: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>],
null,
void
>;
beforeMove: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>],
null,
void
>;
moved: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>],
null,
void
>;
createNode: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>, HTMLElement],
null,
void
>;
appendNode: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>, HTMLElement],
null,
void
>;
removeNode: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>, HTMLElement],
null,
void
>;
beforeDestroy: import('hooks-plugin').AsyncHook<
[import('../types').Danmaku<T>, unknown],
null
>;
destroyed: import('hooks-plugin').SyncHook<
[import('../types').Danmaku<T>, unknown],
null,
void
>;
},
Record<string, unknown>
>,
'name' | 'version'
>
> & {
hide?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>],
null,
void
>
| undefined;
show?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>],
null,
void
>
| undefined;
pause?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>],
null,
void
>
| undefined;
resume?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>],
null,
void
>
| undefined;
beforeMove?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>],
null,
void
>
| undefined;
moved?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>],
null,
void
>
| undefined;
createNode?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>, HTMLElement],
null,
void
>
| undefined;
appendNode?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>, HTMLElement],
null,
void
>
| undefined;
removeNode?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>, HTMLElement],
null,
void
>
| undefined;
beforeDestroy?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>, unknown],
null,
import('hooks-plugin').CallbackReturnType<void>
>
| undefined;
destroyed?:
| import('hooks-plugin').Callback<
[import('../types').Danmaku<T>, unknown],
null,
void
>
| undefined;
} & {
name: string;
};
}