UNPKG

@minto-ai/type-writer

Version:

流式打字机效果组件,提供逐字符显示文本的打字机效果

52 lines (51 loc) 1.48 kB
import { PublicCustomEventName, TypeWriterOptions } from './types'; declare class TypeWriter { private options; private status; private wordQueue; private timer; private outputText; private isSendComplete; private generator; private $bus; constructor(options: TypeWriterOptions); private createTextGenerator; /** * 发送文本 * @param text 要发送的文本 * @returns 打字机实例 */ send(text: string): TypeWriter; /** * 手动结束打字机 */ end(): void; /** * 手动销毁打字机 */ finish(): void; private execute; /** * 获取当前输出的文本 * @returns 当前输出的文本 */ getText(): string; private emit; /** * 监听事件 * @param eventName 事件名称,支持以下事件: * - 'change': 文本变化事件,当有新字符输出时触发,回调参数为当前完整文本 * - 'complete': 完成事件,当打字任务完成时触发,无回调参数 * @param callback 回调函数 * @returns 打字机实例 */ on(eventName: PublicCustomEventName, callback: (data?: any) => void): TypeWriter; } /** * 创建一个打字机实例 * @param options 配置项 * @param options.speed 打字速度,单位为毫秒,默认值为 100 * @returns 打字机实例 */ export declare function createTypeWriter(options: TypeWriterOptions): TypeWriter; export {};