import {Ice} from 'ice'; import '../Ice/ObjectAdapterF'; import '../Ice/ConnectionF'; import '../Ice/Identity'; import '../Ice/Version'; declare module './Ice.ns' { namespace Ice { /** * A request context. Context is used to transmit metadata about a * request from the server to the client, such as Quality-of-Service * (QoS) parameters. Each operation on the client has a Context as * its implicit final parameter. */ type Context = Map; const Context: { /** * A request context. Context is used to transmit metadata about a * request from the server to the client, such as Quality-of-Service * (QoS) parameters. Each operation on the client has a Context as * its implicit final parameter. */ new (entries?: ReadonlyArray<[string, string]>): Context; }; type OperationModeName = 'Normal' | 'Nonmutating' | 'Idempotent'; class OperationMode< Name extends OperationModeName = OperationModeName > extends Ice.EnumBase { static Normal: OperationMode<'Normal'>; static Nonmutating: OperationMode<'Nonmutating'>; static Idempotent: OperationMode<'Idempotent'>; } /** * Information about the current method invocation for servers. Each * operation on the server has a Current as its implicit final * parameter. Current is mostly used for Ice services. Most * applications ignore this parameter. */ class Current implements Ice.Struct { constructor( adapter?: ObjectAdapter, con?: Connection, id?: Identity, facet?: string, operation?: string, mode?: OperationMode, ctx?: Context, requestId?: number, encoding?: Ice.EncodingVersion, ); /** * The object adapter. */ adapter: ObjectAdapter; /** * Information about the connection over which the current method * invocation was received. If the invocation is direct due to * collocation optimization, this value is set to null. */ con: Connection; /** * The Ice object identity. */ id: Identity; facet: string; /** * The operation name. */ operation: string; /** * The mode of the operation. */ mode: OperationMode; /** * The request context, as received from the client. */ ctx: Context; /** * The request id unless oneway (0) or collocated (-1). */ requestId: number; /** * The encoding version used to encode the input and output parameters. */ encoding: Ice.EncodingVersion; clone(): this; equals(other: this): boolean; hashCode(): number; } } } export {Ice} from './Ice.ns';