import { grpc } from '@improbable-eng/grpc-web';
import { CompatServiceDefinition, MethodDefinition, ServiceDefinition } from '.';
export type FromGrpcWebServiceDefinition<Service extends grpc.ServiceDefinition> = {
    [M in GrpcWebServiceMethodKeys<Service> as Uncapitalize<M>]: FromGrpcWebMethodDefinition<Service[M]>;
};
export type GrpcWebServiceMethodKeys<Service extends grpc.ServiceDefinition> = {
    [K in keyof Service]: Service[K] extends grpc.MethodDefinition<any, any> ? K : never;
}[keyof Service] & string;
export type FromGrpcWebMethodDefinition<Method> = Method extends grpc.MethodDefinition<infer Request, infer Response> ? MethodDefinition<Request, Request, Response, Response, Method['requestStream'], Method['responseStream']> : never;
export declare function fromGrpcWebServiceDefinition(definition: grpc.ServiceDefinition): ServiceDefinition;
export declare function isGrpcWebServiceDefinition(definition: CompatServiceDefinition): definition is grpc.ServiceDefinition;
