type Runner = ((taskUnit: T) => T | undefined) | undefined; type ThreadOptions = { priority: number; }; declare class Thread { static create(runner: Runner, taskUnit: unknown, options: ThreadOptions): Thread; static threads: Thread[]; static threadMap: Map; static isAllEmpty(): boolean; static yieldInterval: number; runner: Runner; taskUnit: unknown; options: ThreadOptions; status: "running" | "destroyed" | "paused"; samePriorityLength: number; private startTime; constructor(runner: Runner, taskUnit: unknown, options: ThreadOptions); start(): void; pause(): void; exec(): unknown; destroy(): void; get shouldYield(): boolean; get isEmpty(): boolean; get yieldInterval(): number; } export { Thread };