import { MethodDefinition, PackageDefinition, ServiceDefinition } from '@grpc/proto-loader';
import { IField, IFoundField, IMessageDefinition } from '../../interfaces';
export declare class PackageDefinitionManager {
    private readonly packageName;
    private readonly packageDefinition;
    constructor(packageName: string, packageDefinition: PackageDefinition);
    getPackageName(): string;
    getServiceDefinition(serviceName: string): ServiceDefinition | undefined;
    getMessageDefinition(messageName: string): IMessageDefinition;
    getMethodDefinition(serviceName: string, rpc: string): MethodDefinition<any, any> | undefined;
    getRequestFields(serviceName: string, rpc: string): IField[];
    getResponseFields(serviceName: string, rpc: string): IField[];
    private getFields;
    findFieldsByType(fields: IField[], typeName: string): IFoundField[];
}
