import { Class } from "@opendaw/lib-std";
import { Box } from "@opendaw/lib-box";
import { AudioData } from "@opendaw/lib-dsp";
import { Sample, SampleMetaData } from "@opendaw/studio-adapters";
import { AssetService } from "../AssetService";
export declare class SampleService extends AssetService<Sample, AudioData> {
    #private;
    readonly audioContext: AudioContext;
    protected readonly namePlural: string;
    protected readonly nameSingular: string;
    protected readonly boxType: Class<Box>;
    protected readonly filePickerOptions: FilePickerOptions;
    constructor(audioContext: AudioContext);
    importRecording(audioData: AudioData, bpm: number, name?: string): Promise<Sample>;
    importFile({ uuid, name, bpm, arrayBuffer, progressHandler, origin }: AssetService.ImportArgs, transformMeta?: (meta: SampleMetaData, audioData: Readonly<AudioData>) => Promise<void>): Promise<Sample>;
    protected collectAllFiles(): Promise<ReadonlyArray<Sample>>;
}
//# sourceMappingURL=SampleService.d.ts.map