import { Root } from 'protobufjs';
import Base from '../base';
import { IComponent, IMsgRsp, IProtobufComponentOptions, IReqBody, IRoute } from '..';
import Application from '../application';
export default class ProtobufComponent extends Base implements IComponent {
    protoPath: string;
    version: string;
    root: Root;
    constructor(app: Application, opts: IProtobufComponentOptions);
    start(): Promise<void>;
    encode(route: IRoute, msg: IMsgRsp): import("..").IObject;
    decode(route: IRoute, body: IReqBody): import("..").IObject;
    getVersion(): string;
    stop(force: boolean): void;
}
