import { DMMF, ReadonlyDeep } from '@prisma/generator-helper';
import { ExtendedDMMFDatamodel } from './extendedDMMFDatamodel';
import { ExtendedDMMFModel } from './extendedDMMFModel';
import { ExtendedDMMFSchemaArg } from './extendedDMMFSchemaArg';
import { FormattedNames } from './formattedNames';
import { FilterdPrismaAction, FilterdPrismaActionPrimitive } from '../constants/objectMaps';
import { GeneratorConfig } from '../schemas';
export declare class ExtendedDMMFSchemaField extends FormattedNames implements DMMF.SchemaField {
    readonly generatorConfig: GeneratorConfig;
    readonly name: DMMF.SchemaField['name'];
    readonly isNullable: DMMF.SchemaField['isNullable'];
    readonly outputType: DMMF.SchemaField['outputType'];
    readonly args: ExtendedDMMFSchemaArg[];
    readonly deprecation?: DMMF.SchemaField['deprecation'];
    readonly documentation?: DMMF.SchemaField['documentation'];
    readonly prismaAction: {
        action?: FilterdPrismaAction;
        primitive: FilterdPrismaActionPrimitive[];
    };
    readonly argName?: string;
    readonly modelType: string | DMMF.OutputType | DMMF.SchemaEnum;
    readonly linkedModel?: ExtendedDMMFModel;
    readonly hasOmitFields: boolean;
    readonly argTypeImports: Set<string>;
    readonly writeSelectFindManyField: boolean;
    readonly writeSelectField: boolean;
    readonly writeIncludeFindManyField: boolean;
    readonly writeIncludeField: boolean;
    readonly writeSelectAndIncludeArgs: boolean;
    readonly customArgType: string;
    readonly writeSelectArg: boolean;
    readonly writeIncludeArg: boolean;
    constructor(generatorConfig: GeneratorConfig, field: DMMF.SchemaField, datamodel: ExtendedDMMFDatamodel);
    testOutputType(): boolean;
    private _setArgs;
    private _setMatchedPrismaAction;
    private _setModelType;
    private _setArgName;
    private _setLinkedModel;
    private _setHasOmitFields;
    private _setArgTypeImports;
    private _setWriteSelectFindManyField;
    private _setWriteSelectField;
    private _setWriteIncludeFindManyField;
    private _setWriteIncludeField;
    private _setWriteSelectAndIncludeArgs;
    private _setWriteSelectArg;
    private _setWriteIncludeArg;
    private _shouldAddOmittedFieldsToOmitUnionArray;
    private _shouldAddIncludeOrSelectToOmitUnion;
    private _shouldAddIncludeToOmitUnionArray;
    private _shouldAddSelectToOmitUnionArray;
    private _getOmitFieldsUnion;
    private _addOmittedFieldsToOmitUnionArray;
    private _setCustomArgType;
    private _getTypeForCustomArgsType;
    private _getCustomArgsFieldName;
    private _getCustomArgsType;
    private _getCustomArgsMultipleTypes;
    private _getCustomArgsSingleType;
    isEnumOutputType(): boolean;
    isListOutputType(): ReadonlyDeep<boolean>;
    isObjectOutputType(): boolean;
    isScalarOutputType(): boolean;
    isCountField(): boolean;
}
//# sourceMappingURL=extendedDMMFSchemaField.d.ts.map