import { Observer, Subscription, Terminable, UUID } from "@opendaw/lib-std";
import { AudioUnitBoxAdapter } from "@opendaw/studio-adapters";
import type { Project } from "./project";
export declare class AudioUnitFreeze implements Terminable {
    #private;
    constructor(project: Project);
    isFrozen(audioUnitBoxAdapter: AudioUnitBoxAdapter): boolean;
    isFrozenUuid(uuid: UUID.Bytes): boolean;
    subscribe(observer: Observer<UUID.Bytes>): Subscription;
    hasSidechainDependents(audioUnitBoxAdapter: AudioUnitBoxAdapter): boolean;
    freeze(audioUnitBoxAdapter: AudioUnitBoxAdapter): Promise<void>;
    unfreeze(audioUnitBoxAdapter: AudioUnitBoxAdapter): void;
    terminate(): void;
}
//# sourceMappingURL=AudioUnitFreeze.d.ts.map