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