/// import * as Component from '../Component'; import * as RpcBus from '../RpcBus'; import { Query } from '../Query'; import { Request } from '../Request'; import { Reply } from '../Reply'; import * as http from 'http'; export declare type queryHandler = (query: Query) => Promise; export declare type requestHandler = (request: Request) => Promise; export declare type Mode = 'client' | 'server'; export interface Subscription extends RpcBus.Subscription { } export interface props extends Component.props { mode: Mode; HTTP: Config; } export interface Config { port: number; host?: string; } export declare class Transport extends Component.Component implements RpcBus.Transport { protected mode: Mode; protected config: Config; protected server: http.Server; protected queryHandler: queryHandler; protected requestHandler: requestHandler; constructor(props: props); start(): Promise; stop(): Promise; serveQuery(handler: queryHandler): Promise; query(query: Query): Promise; serveRequest(handler: requestHandler): Promise; request(request: Request): Promise; respondReply(res: http.ServerResponse, promise: Promise): void; }