UNPKG

@opra/common

Version:
42 lines (41 loc) 1.5 kB
import type { Combine, Type } from 'ts-gems'; import { TypeThunkAsync } from 'ts-gems/lib/types'; import { OpraSchema } from '../../schema/index.js'; import { DocumentElement } from '../common/document-element.js'; import { DataType } from '../data-type/data-type.js'; import type { RpcHeader } from './rpc-header'; import type { RpcOperation } from './rpc-operation'; /** * @namespace RpcOperationResponse */ export declare namespace RpcOperationResponse { interface Metadata extends Combine<{ payloadType?: TypeThunkAsync | string; keyType?: TypeThunkAsync | string; headers?: RpcHeader.Metadata[]; }, OpraSchema.RpcOperationResponse> { } interface Options extends Combine<{ keyType?: Type | string; }, Pick<Metadata, 'channel' | 'description'>> { } interface InitArguments extends Combine<{ payloadType?: DataType | string | Type; keyType?: DataType | string | Type; }, Pick<Metadata, 'channel' | 'description'>> { } } /** * @class RpcOperationResponse */ export declare class RpcOperationResponse extends DocumentElement { readonly owner: RpcOperation; channel?: string | RegExp | (string | RegExp)[]; description?: string; payloadType: DataType; keyType?: DataType; headers: RpcHeader[]; constructor(owner: RpcOperation, initArgs?: RpcOperationResponse.InitArguments); findHeader(paramName: string): RpcHeader | undefined; toJSON(): OpraSchema.RpcOperationResponse; }