import Application from './application';
import { IApplicationOpts } from './interfaces/opts';
import BackendSessionComponent from './components/backendSession';
import ConnectorComponent from './components/connector';
import MasterComponent from './components/master';
import ProxyComponent from './components/proxy';
import RemoteComponent from './components/remote';
import ServerComponent from './components/server';
import SessionComponent from './components/session';
import ChannelComponent from './components/channel';
import PushSchedulerComponent from './components/pushScheduler';
import TimeFilter from './filters/handler/time';
import TimeoutFilter from './filters/handler/timeout';
import DictionaryComponent from './components/dictionary';
import ProtobufComponent from './components/protobuf';
import MonitorComponent from './components/monitor';
import ConnectionComponent from './components/connection';
export declare class Sdg {
    private _app;
    components: {
        backendSession: typeof BackendSessionComponent;
        channel: typeof ChannelComponent;
        connection: typeof ConnectionComponent;
        connector: typeof ConnectorComponent;
        dictionary: typeof DictionaryComponent;
        master: typeof MasterComponent;
        monitor: typeof MonitorComponent;
        protobuf: typeof ProtobufComponent;
        proxy: typeof ProxyComponent;
        pushScheduler: typeof PushSchedulerComponent;
        remote: typeof RemoteComponent;
        server: typeof ServerComponent;
        session: typeof SessionComponent;
    };
    filters: {
        time: TimeFilter;
        timeout: TimeoutFilter;
    };
    constructor();
    createApp(opts: IApplicationOpts): Application;
    /**
     * Get application
     */
    get app(): Application;
}
declare const _default: Sdg;
export default _default;
