import { TypeAliasDeclaration } from 'ts-morph'; import { NamedType } from './NamedType'; import { ResourceType } from './ResourceType'; import type { ActionContext } from '../context'; import type { SchemaModel } from '@fresha/openapi-model/build/3.0.3'; export declare class DocumentType extends NamedType { primaryResourceTypes: NamedType[]; primaryDataIsArray: boolean; includedResourceTypes: NamedType[]; constructor(context: ActionContext, name: string, schema: SchemaModel, isRequestBody: boolean, isRequired: boolean); get primaryResourceTypeCount(): number; primaryResourceType(): ResourceType; get includedResourceTypeCount(): number; collectData(namedTypes: Map): void; private determinePrimaryDataTypes; private determineSinglePrimaryDataType; private determineIncludedDataTypes; private determineSingleIncludedDataType; generateCode(generatedTypes: Set): void; protected generateJsDocs(typeAlias: TypeAliasDeclaration): void; } //# sourceMappingURL=DocumentType.d.ts.map