import type * as grpc from '@grpc/grpc-js'; import type { MethodDefinition } from '@grpc/proto-loader'; import type { ServerFrame as _memoflow_v1_ServerFrame, ServerFrame__Output as _memoflow_v1_ServerFrame__Output } from '../../memoflow/v1/ServerFrame.js'; import type { WorkerFrame as _memoflow_v1_WorkerFrame, WorkerFrame__Output as _memoflow_v1_WorkerFrame__Output } from '../../memoflow/v1/WorkerFrame.js'; /** * One long-lived session per worker process (or per task-queue registration — * a worker serving multiple queues opens one session per queue). * The wire-level name is intentionally frozen before launch because SDKs expose * it as WorkerSession; renaming it solely for a style suffix would churn every * generated client without improving the contract. */ export interface WorkerSessionClient extends grpc.Client { /** * Frames are a bidirectional session protocol rather than ordinary unary * request/response messages; their directional names are intentional. */ Session(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream<_memoflow_v1_WorkerFrame, _memoflow_v1_ServerFrame__Output>; Session(options?: grpc.CallOptions): grpc.ClientDuplexStream<_memoflow_v1_WorkerFrame, _memoflow_v1_ServerFrame__Output>; /** * Frames are a bidirectional session protocol rather than ordinary unary * request/response messages; their directional names are intentional. */ session(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream<_memoflow_v1_WorkerFrame, _memoflow_v1_ServerFrame__Output>; session(options?: grpc.CallOptions): grpc.ClientDuplexStream<_memoflow_v1_WorkerFrame, _memoflow_v1_ServerFrame__Output>; } /** * One long-lived session per worker process (or per task-queue registration — * a worker serving multiple queues opens one session per queue). * The wire-level name is intentionally frozen before launch because SDKs expose * it as WorkerSession; renaming it solely for a style suffix would churn every * generated client without improving the contract. */ export interface WorkerSessionHandlers extends grpc.UntypedServiceImplementation { /** * Frames are a bidirectional session protocol rather than ordinary unary * request/response messages; their directional names are intentional. */ Session: grpc.handleBidiStreamingCall<_memoflow_v1_WorkerFrame__Output, _memoflow_v1_ServerFrame>; } export interface WorkerSessionDefinition extends grpc.ServiceDefinition { Session: MethodDefinition<_memoflow_v1_WorkerFrame, _memoflow_v1_ServerFrame, _memoflow_v1_WorkerFrame__Output, _memoflow_v1_ServerFrame__Output>; }