@opra/core
Version:
Opra schema package
29 lines (28 loc) • 933 B
TypeScript
import './augmentation/18n.augmentation.js';
import { ApiDocument, I18n, OpraSchema } from '@opra/common';
import { AsyncEventEmitter, EventMap } from 'node-events-async';
import { AssetCache } from './asset-cache.js';
import { kAssetCache } from './constants.js';
import { ILogger } from './interfaces/logger.interface.js';
/**
* @class PlatformAdapter
*/
export declare abstract class PlatformAdapter<T extends EventMap<T> = never> extends AsyncEventEmitter<T> {
protected [kAssetCache]: AssetCache;
protected _document: ApiDocument;
abstract readonly transform: OpraSchema.Transport;
i18n: I18n;
logger?: ILogger;
protected constructor(options?: PlatformAdapter.Options);
get document(): ApiDocument;
abstract close(): Promise<void>;
}
/**
* @namespace PlatformAdapter
*/
export declare namespace PlatformAdapter {
interface Options {
i18n?: I18n;
logger?: ILogger;
}
}