import type { VersionedUrl } from "@blockprotocol/type-system"; /** * The input parameters of Codegen, prior to their validation. */ export type CodegenParameters = { /** Files, and the types to generate within them */ outputFolder: string; targets: { [fileName: string]: [ { sourceTypeId: VersionedUrl; /** Whether to generate helper types which mark this Entity Type as the Block Entity */ blockEntity?: boolean; } ]; }; typeNameOverrides?: { [sourceTypeId: string]: string; }; /** * Enables fetching the schema from a different URL to the one in its schema. * The return of this function will be used as the URL to fetch the type from, * but does NOT affect the type id in the generated schema. */ getFetchUrlFromTypeId?: (typeId: VersionedUrl) => VersionedUrl; /** Generate look-up maps with aliases for all type URLs */ typeIdAliases?: { enabled: false; } | { enabled: true; /** Override the generated name for certain aliases */ overrides?: { [sourceTypeId: string]: string; }; }; }; export declare const validateCodegenParameters: (parameters: unknown) => { errors: string[]; } | undefined; export type ProcessedCodegenParameters = Omit, "targets" | "getFetchUrlFromTypeId"> & { getFetchUrlFromTypeId: CodegenParameters["getFetchUrlFromTypeId"]; targets: { [fileName: string]: { sourceTypeIds: VersionedUrl[]; blockEntity?: VersionedUrl; }; }; }; export declare const processCodegenParameters: (parameters: CodegenParameters) => ProcessedCodegenParameters;