UNPKG

@aristech-org/nlp-client

Version:

A Node.js client library for the Aristech NLP Service

410 lines (409 loc) 27.9 kB
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import { type CallOptions, type ChannelCredentials, Client, type ClientOptions, type ClientReadableStream, type ClientUnaryCall, type handleServerStreamingCall, type handleUnaryCall, type Metadata, type ServiceError, type UntypedServiceImplementation } from "@grpc/grpc-js"; import { AddDocumentsRequest, AddDocumentsResponse, ContentType, GetDocumentsRequest, GetDocumentsResponse, GetDocumentStatusRequest, GetDocumentStatusResponse, ProcessDocumentsRequest, ProcessDocumentsResponse, RemoveDocumentsRequest, RemoveDocumentsResponse, UpdateDocumentsRequest, UpdateDocumentsResponse } from "./documents.js"; import { GetContentRequest, GetContentResponse, GetIntentsRequest, GetKeywordsRequest, GetKeywordsResponse, GetScoreLimitsRequest, GetScoreLimitsResponse, Intent, RemoveContentRequest, RemoveContentResponse, UpdateContentRequest, UpdateContentResponse } from "./intents.js"; import { AddProjectRequest, AddProjectResponse, EmbeddingModel, GetEmbeddingModelsRequest, GetProjectsRequest, Project, RemoveProjectRequest, RemoveProjectResponse, UpdateProjectRequest, UpdateProjectResponse } from "./projects.js"; export declare const protobufPackage = "aristech.nlp"; /** Request for the list of functions provided by the server. */ export interface FunctionRequest { } /** * Describes a specific operation that can be applied to incoming text, * such as classification or recasing. */ export interface FunctionMessage { /** Unique identifier of the function. */ id: string; /** Descriptive name of the function. */ name: string; /** Detailed description of the function. */ description: string; /** List of arguments accepted by the function. */ arguments: string[]; /** bool that indicates if the function can process attachments */ supportsAttachments: boolean; supportedContentTypes: ContentType[]; } /** Request to process raw text using specified functions. */ export interface RunFunctionsRequest { /** List of functions to apply. */ functions: FunctionMessage[]; /** The raw text to process. */ input: string; /** Additional parameters for the functions. */ arguments: string[]; /** Optional attachments for additional data (e.g. images, files). */ attachments: Attachment[]; } export interface Attachment { /** A unique identifier or filename for the attachment. */ name: string; /** MIME type (e.g. "image/png", "application/pdf"). */ contentType: ContentType; /** Raw binary data of the attachment. */ data: Uint8Array; } /** Response message containing the result of text processing. */ export interface RunFunctionsResponse { /** The processed text result. */ output: string; } export interface SyncDBsRequest { } export interface SyncDBsResponse { status: string; } export declare const FunctionRequest: MessageFns<FunctionRequest>; export declare const FunctionMessage: MessageFns<FunctionMessage>; export declare const RunFunctionsRequest: MessageFns<RunFunctionsRequest>; export declare const Attachment: MessageFns<Attachment>; export declare const RunFunctionsResponse: MessageFns<RunFunctionsResponse>; export declare const SyncDBsRequest: MessageFns<SyncDBsRequest>; export declare const SyncDBsResponse: MessageFns<SyncDBsResponse>; /** * NLPServer provides the interface for various NLP functionalities. * These functions include text processing, content management in projects, * and interaction with vectorized data structures. */ export type NLPServerService = typeof NLPServerService; export declare const NLPServerService: { /** * Returns all available processing functions (models) of the server. * Each function includes a unique ID, a descriptive name, * a description, and a list of possible arguments. */ readonly getFunctions: { readonly path: "/aristech.nlp.NLPServer/GetFunctions"; readonly requestStream: false; readonly responseStream: true; readonly requestSerialize: (value: FunctionRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => FunctionRequest; readonly responseSerialize: (value: FunctionMessage) => Buffer; readonly responseDeserialize: (value: Buffer) => FunctionMessage; }; /** * Processes the provided raw text using the specified functions. * Multiple functions can be applied sequentially. */ readonly runFunctions: { readonly path: "/aristech.nlp.NLPServer/RunFunctions"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: RunFunctionsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => RunFunctionsRequest; readonly responseSerialize: (value: RunFunctionsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => RunFunctionsResponse; }; /** Adds new content or updates existing content. */ readonly updateContent: { readonly path: "/aristech.nlp.NLPServer/UpdateContent"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateContentRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateContentRequest; readonly responseSerialize: (value: UpdateContentResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => UpdateContentResponse; }; /** Removes the specified content. */ readonly removeContent: { readonly path: "/aristech.nlp.NLPServer/RemoveContent"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: RemoveContentRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => RemoveContentRequest; readonly responseSerialize: (value: RemoveContentResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => RemoveContentResponse; }; /** Retrieves content that is available both as vectorized data and as plain text. */ readonly getContent: { readonly path: "/aristech.nlp.NLPServer/GetContent"; readonly requestStream: false; readonly responseStream: true; readonly requestSerialize: (value: GetContentRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetContentRequest; readonly responseSerialize: (value: GetContentResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => GetContentResponse; }; /** Initializes a new project. */ readonly addProject: { readonly path: "/aristech.nlp.NLPServer/AddProject"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: AddProjectRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => AddProjectRequest; readonly responseSerialize: (value: AddProjectResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => AddProjectResponse; }; /** Removes an existing project and all associated content. */ readonly removeProject: { readonly path: "/aristech.nlp.NLPServer/RemoveProject"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: RemoveProjectRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => RemoveProjectRequest; readonly responseSerialize: (value: RemoveProjectResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => RemoveProjectResponse; }; /** Updates the settings or configuration of an existing project. */ readonly updateProject: { readonly path: "/aristech.nlp.NLPServer/UpdateProject"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateProjectRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateProjectRequest; readonly responseSerialize: (value: UpdateProjectResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => UpdateProjectResponse; }; /** Returns a list of all projects. */ readonly getProjects: { readonly path: "/aristech.nlp.NLPServer/GetProjects"; readonly requestStream: false; readonly responseStream: true; readonly requestSerialize: (value: GetProjectsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetProjectsRequest; readonly responseSerialize: (value: Project) => Buffer; readonly responseDeserialize: (value: Buffer) => Project; }; /** Retrieves all intents of a project. */ readonly getIntents: { readonly path: "/aristech.nlp.NLPServer/GetIntents"; readonly requestStream: false; readonly responseStream: true; readonly requestSerialize: (value: GetIntentsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetIntentsRequest; readonly responseSerialize: (value: Intent) => Buffer; readonly responseDeserialize: (value: Buffer) => Intent; }; /** Determines score limits for a project based on test inputs. */ readonly getScoreLimits: { readonly path: "/aristech.nlp.NLPServer/GetScoreLimits"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetScoreLimitsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetScoreLimitsRequest; readonly responseSerialize: (value: GetScoreLimitsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => GetScoreLimitsResponse; }; /** Returns a list of available embedding models for similarity searches. */ readonly getEmbeddingModels: { readonly path: "/aristech.nlp.NLPServer/GetEmbeddingModels"; readonly requestStream: false; readonly responseStream: true; readonly requestSerialize: (value: GetEmbeddingModelsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetEmbeddingModelsRequest; readonly responseSerialize: (value: EmbeddingModel) => Buffer; readonly responseDeserialize: (value: Buffer) => EmbeddingModel; }; readonly syncDBs: { readonly path: "/aristech.nlp.NLPServer/SyncDBs"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: SyncDBsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => SyncDBsRequest; readonly responseSerialize: (value: SyncDBsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => SyncDBsResponse; }; readonly getKeywords: { readonly path: "/aristech.nlp.NLPServer/GetKeywords"; readonly requestStream: false; readonly responseStream: true; readonly requestSerialize: (value: GetKeywordsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetKeywordsRequest; readonly responseSerialize: (value: GetKeywordsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => GetKeywordsResponse; }; readonly addDocuments: { readonly path: "/aristech.nlp.NLPServer/AddDocuments"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: AddDocumentsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => AddDocumentsRequest; readonly responseSerialize: (value: AddDocumentsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => AddDocumentsResponse; }; readonly getDocuments: { readonly path: "/aristech.nlp.NLPServer/GetDocuments"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetDocumentsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetDocumentsRequest; readonly responseSerialize: (value: GetDocumentsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => GetDocumentsResponse; }; readonly processDocuments: { readonly path: "/aristech.nlp.NLPServer/ProcessDocuments"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ProcessDocumentsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ProcessDocumentsRequest; readonly responseSerialize: (value: ProcessDocumentsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ProcessDocumentsResponse; }; readonly updateDocuments: { readonly path: "/aristech.nlp.NLPServer/UpdateDocuments"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateDocumentsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateDocumentsRequest; readonly responseSerialize: (value: UpdateDocumentsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => UpdateDocumentsResponse; }; readonly removeDocuments: { readonly path: "/aristech.nlp.NLPServer/RemoveDocuments"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: RemoveDocumentsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => RemoveDocumentsRequest; readonly responseSerialize: (value: RemoveDocumentsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => RemoveDocumentsResponse; }; readonly getDocumentStatus: { readonly path: "/aristech.nlp.NLPServer/GetDocumentStatus"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetDocumentStatusRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetDocumentStatusRequest; readonly responseSerialize: (value: GetDocumentStatusResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => GetDocumentStatusResponse; }; }; export interface NLPServerServer extends UntypedServiceImplementation { /** * Returns all available processing functions (models) of the server. * Each function includes a unique ID, a descriptive name, * a description, and a list of possible arguments. */ getFunctions: handleServerStreamingCall<FunctionRequest, FunctionMessage>; /** * Processes the provided raw text using the specified functions. * Multiple functions can be applied sequentially. */ runFunctions: handleUnaryCall<RunFunctionsRequest, RunFunctionsResponse>; /** Adds new content or updates existing content. */ updateContent: handleUnaryCall<UpdateContentRequest, UpdateContentResponse>; /** Removes the specified content. */ removeContent: handleUnaryCall<RemoveContentRequest, RemoveContentResponse>; /** Retrieves content that is available both as vectorized data and as plain text. */ getContent: handleServerStreamingCall<GetContentRequest, GetContentResponse>; /** Initializes a new project. */ addProject: handleUnaryCall<AddProjectRequest, AddProjectResponse>; /** Removes an existing project and all associated content. */ removeProject: handleUnaryCall<RemoveProjectRequest, RemoveProjectResponse>; /** Updates the settings or configuration of an existing project. */ updateProject: handleUnaryCall<UpdateProjectRequest, UpdateProjectResponse>; /** Returns a list of all projects. */ getProjects: handleServerStreamingCall<GetProjectsRequest, Project>; /** Retrieves all intents of a project. */ getIntents: handleServerStreamingCall<GetIntentsRequest, Intent>; /** Determines score limits for a project based on test inputs. */ getScoreLimits: handleUnaryCall<GetScoreLimitsRequest, GetScoreLimitsResponse>; /** Returns a list of available embedding models for similarity searches. */ getEmbeddingModels: handleServerStreamingCall<GetEmbeddingModelsRequest, EmbeddingModel>; syncDBs: handleUnaryCall<SyncDBsRequest, SyncDBsResponse>; getKeywords: handleServerStreamingCall<GetKeywordsRequest, GetKeywordsResponse>; addDocuments: handleUnaryCall<AddDocumentsRequest, AddDocumentsResponse>; getDocuments: handleUnaryCall<GetDocumentsRequest, GetDocumentsResponse>; processDocuments: handleUnaryCall<ProcessDocumentsRequest, ProcessDocumentsResponse>; updateDocuments: handleUnaryCall<UpdateDocumentsRequest, UpdateDocumentsResponse>; removeDocuments: handleUnaryCall<RemoveDocumentsRequest, RemoveDocumentsResponse>; getDocumentStatus: handleUnaryCall<GetDocumentStatusRequest, GetDocumentStatusResponse>; } export interface NLPServerClient extends Client { /** * Returns all available processing functions (models) of the server. * Each function includes a unique ID, a descriptive name, * a description, and a list of possible arguments. */ getFunctions(request: FunctionRequest, options?: Partial<CallOptions>): ClientReadableStream<FunctionMessage>; getFunctions(request: FunctionRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<FunctionMessage>; /** * Processes the provided raw text using the specified functions. * Multiple functions can be applied sequentially. */ runFunctions(request: RunFunctionsRequest, callback: (error: ServiceError | null, response: RunFunctionsResponse) => void): ClientUnaryCall; runFunctions(request: RunFunctionsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: RunFunctionsResponse) => void): ClientUnaryCall; runFunctions(request: RunFunctionsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: RunFunctionsResponse) => void): ClientUnaryCall; /** Adds new content or updates existing content. */ updateContent(request: UpdateContentRequest, callback: (error: ServiceError | null, response: UpdateContentResponse) => void): ClientUnaryCall; updateContent(request: UpdateContentRequest, metadata: Metadata, callback: (error: ServiceError | null, response: UpdateContentResponse) => void): ClientUnaryCall; updateContent(request: UpdateContentRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: UpdateContentResponse) => void): ClientUnaryCall; /** Removes the specified content. */ removeContent(request: RemoveContentRequest, callback: (error: ServiceError | null, response: RemoveContentResponse) => void): ClientUnaryCall; removeContent(request: RemoveContentRequest, metadata: Metadata, callback: (error: ServiceError | null, response: RemoveContentResponse) => void): ClientUnaryCall; removeContent(request: RemoveContentRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: RemoveContentResponse) => void): ClientUnaryCall; /** Retrieves content that is available both as vectorized data and as plain text. */ getContent(request: GetContentRequest, options?: Partial<CallOptions>): ClientReadableStream<GetContentResponse>; getContent(request: GetContentRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<GetContentResponse>; /** Initializes a new project. */ addProject(request: AddProjectRequest, callback: (error: ServiceError | null, response: AddProjectResponse) => void): ClientUnaryCall; addProject(request: AddProjectRequest, metadata: Metadata, callback: (error: ServiceError | null, response: AddProjectResponse) => void): ClientUnaryCall; addProject(request: AddProjectRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: AddProjectResponse) => void): ClientUnaryCall; /** Removes an existing project and all associated content. */ removeProject(request: RemoveProjectRequest, callback: (error: ServiceError | null, response: RemoveProjectResponse) => void): ClientUnaryCall; removeProject(request: RemoveProjectRequest, metadata: Metadata, callback: (error: ServiceError | null, response: RemoveProjectResponse) => void): ClientUnaryCall; removeProject(request: RemoveProjectRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: RemoveProjectResponse) => void): ClientUnaryCall; /** Updates the settings or configuration of an existing project. */ updateProject(request: UpdateProjectRequest, callback: (error: ServiceError | null, response: UpdateProjectResponse) => void): ClientUnaryCall; updateProject(request: UpdateProjectRequest, metadata: Metadata, callback: (error: ServiceError | null, response: UpdateProjectResponse) => void): ClientUnaryCall; updateProject(request: UpdateProjectRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: UpdateProjectResponse) => void): ClientUnaryCall; /** Returns a list of all projects. */ getProjects(request: GetProjectsRequest, options?: Partial<CallOptions>): ClientReadableStream<Project>; getProjects(request: GetProjectsRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<Project>; /** Retrieves all intents of a project. */ getIntents(request: GetIntentsRequest, options?: Partial<CallOptions>): ClientReadableStream<Intent>; getIntents(request: GetIntentsRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<Intent>; /** Determines score limits for a project based on test inputs. */ getScoreLimits(request: GetScoreLimitsRequest, callback: (error: ServiceError | null, response: GetScoreLimitsResponse) => void): ClientUnaryCall; getScoreLimits(request: GetScoreLimitsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: GetScoreLimitsResponse) => void): ClientUnaryCall; getScoreLimits(request: GetScoreLimitsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: GetScoreLimitsResponse) => void): ClientUnaryCall; /** Returns a list of available embedding models for similarity searches. */ getEmbeddingModels(request: GetEmbeddingModelsRequest, options?: Partial<CallOptions>): ClientReadableStream<EmbeddingModel>; getEmbeddingModels(request: GetEmbeddingModelsRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<EmbeddingModel>; syncDBs(request: SyncDBsRequest, callback: (error: ServiceError | null, response: SyncDBsResponse) => void): ClientUnaryCall; syncDBs(request: SyncDBsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: SyncDBsResponse) => void): ClientUnaryCall; syncDBs(request: SyncDBsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: SyncDBsResponse) => void): ClientUnaryCall; getKeywords(request: GetKeywordsRequest, options?: Partial<CallOptions>): ClientReadableStream<GetKeywordsResponse>; getKeywords(request: GetKeywordsRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<GetKeywordsResponse>; addDocuments(request: AddDocumentsRequest, callback: (error: ServiceError | null, response: AddDocumentsResponse) => void): ClientUnaryCall; addDocuments(request: AddDocumentsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: AddDocumentsResponse) => void): ClientUnaryCall; addDocuments(request: AddDocumentsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: AddDocumentsResponse) => void): ClientUnaryCall; getDocuments(request: GetDocumentsRequest, callback: (error: ServiceError | null, response: GetDocumentsResponse) => void): ClientUnaryCall; getDocuments(request: GetDocumentsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: GetDocumentsResponse) => void): ClientUnaryCall; getDocuments(request: GetDocumentsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: GetDocumentsResponse) => void): ClientUnaryCall; processDocuments(request: ProcessDocumentsRequest, callback: (error: ServiceError | null, response: ProcessDocumentsResponse) => void): ClientUnaryCall; processDocuments(request: ProcessDocumentsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ProcessDocumentsResponse) => void): ClientUnaryCall; processDocuments(request: ProcessDocumentsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: ProcessDocumentsResponse) => void): ClientUnaryCall; updateDocuments(request: UpdateDocumentsRequest, callback: (error: ServiceError | null, response: UpdateDocumentsResponse) => void): ClientUnaryCall; updateDocuments(request: UpdateDocumentsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: UpdateDocumentsResponse) => void): ClientUnaryCall; updateDocuments(request: UpdateDocumentsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: UpdateDocumentsResponse) => void): ClientUnaryCall; removeDocuments(request: RemoveDocumentsRequest, callback: (error: ServiceError | null, response: RemoveDocumentsResponse) => void): ClientUnaryCall; removeDocuments(request: RemoveDocumentsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: RemoveDocumentsResponse) => void): ClientUnaryCall; removeDocuments(request: RemoveDocumentsRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: RemoveDocumentsResponse) => void): ClientUnaryCall; getDocumentStatus(request: GetDocumentStatusRequest, callback: (error: ServiceError | null, response: GetDocumentStatusResponse) => void): ClientUnaryCall; getDocumentStatus(request: GetDocumentStatusRequest, metadata: Metadata, callback: (error: ServiceError | null, response: GetDocumentStatusResponse) => void): ClientUnaryCall; getDocumentStatus(request: GetDocumentStatusRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: GetDocumentStatusResponse) => void): ClientUnaryCall; } export declare const NLPServerClient: { new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): NLPServerClient; service: typeof NLPServerService; serviceName: string; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]>; } : Partial<T>; type KeysOfUnion<T> = T extends T ? keyof T : never; export type Exact<P, I extends P> = P extends Builtin ? P : P & { [K in keyof P]: Exact<P[K], I[K]>; } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never; }; export interface MessageFns<T> { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create<I extends Exact<DeepPartial<T>, I>>(base?: I): T; fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T; } export {};