import * as Component from './Component'; import * as RpcAble from './RpcAble'; import { State } from './State'; import { Command } from './Command'; import { Event } from './Event'; import { Typer } from 'cqes-type'; export declare type emitter = (type: Typer | Event, data: any, meta?: any) => void; export declare type handler = (state: State, command: Command, emit?: emitter) => Array | Event | void; export interface props extends Component.props, RpcAble.props { } export declare class Handlers extends Component.Component { protected rpcBuses: RpcAble.Buses; protected queryTypes: RpcAble.Types; protected requestTypes: RpcAble.Types; protected query: (target: Typer, data: any, meta?: any) => RpcAble.EventEmitter; protected request: (target: Typer, data: any, meta?: any) => RpcAble.EventEmitter; constructor(props: props); start(): Promise; stop(): Promise; }