@opra/common
Version:
Opra common package
42 lines (41 loc) • 1.5 kB
TypeScript
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;
}