import { ReferenceObject, SchemaObject } from 'openapi3-ts'; import { OaImport } from './oa-import.js'; import { Options } from './options.js'; export declare abstract class OaBase { readonly refName: string; readonly options: Options; /** Name of the generated type / class */ typeName: string; /** Namespace, separated by '/' */ namespace?: string; /** Name of the generated file */ fileName: string; /** Camel-case qualified name of the type, including namespace */ qualifiedName: string; /** TypeScript comments for this type */ tsComments: string; /** Relative path to modelsDir, ending with `/` */ pathToModels: string; imports: OaImport[]; protected _imports: Map; additionalDependencies: string[]; private _additionalDependencies; protected constructor(refName: string, options: Options, typeNameTransform: (oaName: string, options: Options) => string); get name(): string; abstract collectImports(imports: Map): void; protected abstract skipImport(refName: string): boolean; protected addImport(refName: string, imports: Map): void; protected createImports(schema: SchemaObject | ReferenceObject | undefined, imports: Map, additional?: boolean, processOneOf?: boolean): void; protected updateImports(): void; }