import { Output, IVisualsContext, IAudioContext, IDOMContext } from './output.js';
export interface IOutputProvider {
    root: HTMLElement;
    start(): void;
    stop(): void;
    onInstall(output: any): void;
    onInject(): void;
    onImport(): void;
    onExport(data: any): any;
    onCreationImport(data: any): Promise<any> | any;
    onCreationExport(data: any): any;
    render(...args: any[]): any;
    getRestrictElement(): HTMLElement;
    onDispose(): void;
    getVisuals(): IVisualsContext;
    getAudio(): IAudioContext;
    getDOM(): IDOMContext;
    resize(): void;
}
export declare abstract class OutputViewProvider implements IOutputProvider {
    root: HTMLElement;
    start(): void;
    stop(): void;
    onInstall(output: Output): void;
    onInject(): void;
    onImport(): void;
    onExport(data: any): any;
    onCreationImport(data: any): Promise<any> | any;
    onCreationExport(data: any): any;
    render(...args: any[]): any;
    getRestrictElement(): HTMLElement;
    onDispose(): void;
    getVisuals(): any;
    getAudio(): any;
    abstract getDOM(): IDOMContext;
    abstract resize(): void;
}
export default OutputViewProvider;
