@opra/common
Version:
Opra common package
19 lines (18 loc) • 826 B
TypeScript
import { OpraSchema } from '../../schema/index.js';
import type { ApiDocument } from '../api-document.js';
import { DocumentElement } from './document-element.js';
import type { DocumentInitContext } from './document-init-context';
export declare namespace ApiBase {
interface InitArguments extends Pick<OpraSchema.Api, 'description' | 'name'> {
owner: ApiDocument | ApiBase;
}
}
export declare abstract class ApiBase extends DocumentElement {
abstract readonly transport: OpraSchema.Transport;
readonly owner: ApiDocument | ApiBase;
name: string;
description?: string;
protected constructor(init: ApiBase.InitArguments);
toJSON(options?: ApiDocument.ExportOptions): OpraSchema.Api;
protected _initialize(init: ApiBase.InitArguments, context: DocumentInitContext): Promise<void>;
}