From c62203900ef7f9864b052a63ba0c13ada160c1f9 Mon Sep 17 00:00:00 2001 From: Patrick Remy Date: Thu, 9 Apr 2020 10:12:47 +0200 Subject: [PATCH] grpc-js: adjust ts definitions to equal native-core Export MethodDefinition in index.ts and add generic ImplementationType to ServiceDefinition --- packages/grpc-js/src/index.ts | 2 ++ packages/grpc-js/src/make-client.ts | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/grpc-js/src/index.ts b/packages/grpc-js/src/index.ts index 941174c01..5e7b8671f 100644 --- a/packages/grpc-js/src/index.ts +++ b/packages/grpc-js/src/index.ts @@ -35,6 +35,7 @@ import { Deserialize, loadPackageDefinition, makeClientConstructor, + MethodDefinition, Serialize, ServiceDefinition, } from './make-client'; @@ -230,6 +231,7 @@ export { ClientWritableStream, ClientDuplexStream, CallOptions, + MethodDefinition, StatusObject, ServiceError, ServerUnaryCall, diff --git a/packages/grpc-js/src/make-client.ts b/packages/grpc-js/src/make-client.ts index 99d40a649..e9e5ead9e 100644 --- a/packages/grpc-js/src/make-client.ts +++ b/packages/grpc-js/src/make-client.ts @@ -18,6 +18,7 @@ import { ChannelCredentials } from './channel-credentials'; import { ChannelOptions } from './channel-options'; import { Client } from './client'; +import { UntypedServiceImplementation } from './server'; export interface Serialize { (value: T): Buffer; @@ -49,9 +50,9 @@ export interface MethodDefinition extends ClientMethodDefinition, ServerMethodDefinition {} -export interface ServiceDefinition { +export type ServiceDefinition = { // tslint:disable-next-line no-any - [index: string]: MethodDefinition; + readonly [index in keyof ImplementationType]: MethodDefinition; } export interface ProtobufTypeDefinition {