import { DefaultObservableValue, int, Option } from "@opendaw/lib-std";
import { AudioData, ppqn } from "@opendaw/lib-dsp";
import { ExportStemsConfiguration, OfflineEngineRenderConfig } from "@opendaw/studio-adapters";
import { Project } from "./project";
export declare class OfflineEngineRenderer {
    #private;
    static install(url: string): void;
    static getWorkerUrl(): string;
    static create(source: Project, optExportConfiguration: Option<ExportStemsConfiguration>, sampleRate?: int): Promise<OfflineEngineRenderer>;
    static start(source: Project, optExportConfiguration: Option<ExportStemsConfiguration>, progress: DefaultObservableValue<number>, abortSignal?: AbortSignal, sampleRate?: int): Promise<AudioData>;
    private constructor();
    get sampleRate(): int;
    get numberOfChannels(): int;
    get totalFrames(): int;
    play(): void;
    stop(): void;
    setPosition(position: ppqn): void;
    waitForLoading(): Promise<void>;
    terminate(): void;
    step(samples: int): Promise<Float32Array[]>;
    render(config: OfflineEngineRenderConfig, endPosition: ppqn, progress: DefaultObservableValue<number>, abortSignal?: AbortSignal): Promise<AudioData>;
}
//# sourceMappingURL=OfflineEngineRenderer.d.ts.map