import { SupportedMutations, SupportedQueries } from "./config";
import { EmitBlockKind } from "./emit-block";
export interface ExternalGeneratorOptions {
    emitDMMF?: boolean;
    emitTranspiledCode?: boolean;
    simpleResolvers?: boolean;
    useOriginalMapping?: boolean;
    useUncheckedScalarInputs?: boolean;
    emitIdAsIDType?: boolean;
    emitOnly?: EmitBlockKind[];
    emitRedundantTypesInfo?: boolean;
    customPrismaImportPath?: string;
    contextPrismaKey?: string;
    useSimpleInputs?: boolean;
    omitInputFieldsByDefault?: string[];
    omitOutputFieldsByDefault?: string[];
    formatGeneratedCode?: boolean | "prettier" | "tsc";
    emitIsAbstract?: boolean;
    debugGenerateCode?: boolean;
    lodashImportName?: string;
    queryActions?: SupportedQueries[];
    mutationActions?: SupportedMutations[];
}
export interface InternalGeneratorOptions {
    outputDirPath: string;
    prismaClientPath: string;
}
export interface GeneratorOptions extends Omit<ExternalGeneratorOptions, "emitOnly" | "contextPrismaKey" | "queryActions" | "mutationActions">, InternalGeneratorOptions {
    blocksToEmit: EmitBlockKind[];
    contextPrismaKey: string;
    relativePrismaOutputPath: string;
    absolutePrismaOutputPath: string | undefined;
    queryActions: SupportedQueries[];
    mutationActions: SupportedMutations[];
    queryActionsByModel?: Record<string, SupportedQueries[] | null>;
    mutationActionsByModel?: Record<string, SupportedMutations[] | null>;
}
