import { OpenAPIObject, SchemaObject } from 'openapi3-ts';
import { EnumValue } from './enum-value';
import { GenType } from './gen-type';
import { Options } from './options';
import { Property } from './property';
/**
 * Context to generate a model
 */
export declare class Model extends GenType {
    openApi: OpenAPIObject;
    schema: SchemaObject;
    isSimple: boolean;
    isEnum: boolean;
    isObject: boolean;
    simpleType: string;
    enumValues: EnumValue[];
    enumArrayName?: string;
    enumArrayFileName?: string;
    elementType: string;
    properties: Property[];
    additionalPropertiesType: string;
    constructor(openApi: OpenAPIObject, name: string, schema: SchemaObject, options: Options);
    protected initPathToRoot(): string;
    protected skipImport(name: string): boolean;
    private collectObject;
}
