import { Pub } from "@e280/stz";
import { ProgressItem } from "../speech-recognition/whisper/parts/types.js";
export interface LoaderEvents {
    onModelLoadProgress: Pub<ProgressItem[]>;
    onTpsUpdate: Pub<[number]>;
}
export declare abstract class Loader {
    readonly name: string;
    model: string;
    tps: number;
    static loaderEvents: {
        onModelLoadProgress: Pub<ProgressItem[]>;
        onTpsUpdate: Pub<[number]>;
    };
    constructor(name: string, model: string);
    abstract init(): Promise<void>;
    abstract setModel(model: string): void;
    setTps(value: number): void;
}
