UNPKG

@opra/common

Version:
48 lines (47 loc) 1.44 kB
import { type Combine, type StrictOmit, type TypeThunkAsync } from 'ts-gems'; import type { OpraSchema } from '../../schema/index.js'; import { DocumentElement } from '../common/document-element.js'; import { Value } from '../common/value.js'; import { DataType } from '../data-type/data-type.js'; import type { EnumType } from '../data-type/enum-type.js'; /** * @namespace RpcHeader */ export declare namespace RpcHeader { interface Metadata extends StrictOmit<OpraSchema.RpcHeader, 'type'> { name: string | RegExp; type?: string | TypeThunkAsync | EnumType.EnumObject | EnumType.EnumArray | object; } interface Options extends Partial<StrictOmit<Metadata, 'type'>> { type?: string | TypeThunkAsync | object; } interface InitArguments extends Combine<{ type?: DataType; }, Metadata> { } } /** * Type definition for RpcHeader * @class RpcHeader */ interface RpcHeaderStatic { new (owner: DocumentElement, args: RpcHeader.InitArguments): RpcHeader; prototype: RpcHeader; } /** * Type definition of RpcHeader prototype * @interface RpcHeader */ export interface RpcHeader extends RpcHeaderClass { } export declare const RpcHeader: RpcHeaderStatic; /** * @class RpcHeader */ declare class RpcHeaderClass extends Value { readonly owner: DocumentElement; deprecated?: boolean | string; required?: boolean; toJSON(): OpraSchema.RpcHeader; } export {};