/**
 * Starts an audio node
 *
 *
 *
 */
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { TypedEventNode } from './_Base';
export declare enum AudioEventOutput {
    ON_STOP = "onStop"
}
declare class AudioEventParamsConfig extends NodeParamsConfig {
    /** @parm audio node */
    audio: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.NODE_PATH>;
    /** @param note */
    note: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    /** @param duration */
    duration: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param button to presse to trigger the event */
    play: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
}
export declare class AudioEventNode extends TypedEventNode<AudioEventParamsConfig> {
    paramsConfig: AudioEventParamsConfig;
    static type(): string;
    initializeNode(): void;
    private _sourcePlayer;
    private _triggerPlay;
    private _play;
    dispose(): void;
    private _addPlayerEvent;
    private _removePlayerEvent;
    private _onSourcePlayerStopBound;
    private _onSourcePlayerStop;
    private _getPlayable;
    static PARAM_CALLBACK_play(node: AudioEventNode): void;
}
export {};
