import { Type } from '@angular/core';
import { Observable } from 'rxjs';
import { CommandBus, CommandEventBus } from './buses';
import { Command, CommandEvent } from './core';
import { CommandFlowScheduler } from './scheduler';
export declare const useCommand: <T extends Type<Command>>(type: T, [scheduler, commands$, events$]?: [CommandFlowScheduler, CommandBus, CommandEventBus]) => (...args: ConstructorParameters<T>) => Observable<CommandEvent<InstanceType<T>>>;