typeinit
Version:
An Intuitive Javascript Typing Animation Library
48 lines (47 loc) • 1.6 kB
TypeScript
import Typeinit from "./index";
export type VisibleOptionsType = "top" | "center" | "bottom";
export type VisibleOptionsTypeCombine = `${VisibleOptionsType} ${VisibleOptionsType}`;
export type DeleteType = "char" | "word" | "c" | "w";
export type WriterType = Typeinit;
export interface OptionsInterface {
typingSpeed?: number;
startDelay?: number;
deletingSpeed?: number;
deleteDelay?: number;
pause?: number;
repeat?: number | "infinite";
repeatEase?: boolean;
repeatSpeed?: number;
repeatDelay?: number;
caret?: boolean;
caretColor?: string;
caretWidth?: number;
waitUntilVisible?: boolean;
visibleOptions?: VisibleOptionsType | VisibleOptionsTypeCombine;
onStart?: () => void;
onEnd?: () => void;
onRestart?: () => void;
onCharTyped?: () => void;
onCharDeleted?: () => void;
[key: string]: any;
}
export interface DeleteOptionsInterface {
mode?: DeleteType;
speed?: number;
delay?: number;
}
export interface DeleteAllOptionsInterface {
speed?: number;
delay?: number;
}
export type TimelineType = (string | boolean | number | DeleteOptionsInterface | DeleteAllOptionsInterface)[];
export interface TypeinitInterface {
type: (message: string) => WriterType;
pause: (ms?: number) => WriterType;
newLine: (numOfLines?: number) => WriterType;
delete: (numToDel: number, deleteOptions: DeleteOptionsInterface) => WriterType;
deleteAll: (ease: boolean, deleteAllOptions: DeleteAllOptionsInterface) => WriterType;
reset: () => void;
restart: () => void;
play: () => void;
}