@proofkit/typegen
Version:
`@proofkit/typegen` is a tool for generating TypeScript types from FileMaker database schemas, making it easier to work with FileMaker data in modern TypeScript projects.
142 lines (141 loc) • 5.65 kB
TypeScript
import { z } from 'zod/v4';
declare const valueListsOptions: z.ZodEnum<{
strict: "strict";
allowEmpty: "allowEmpty";
ignore: "ignore";
}>;
export type ValueListsOptions = z.infer<typeof valueListsOptions>;
declare const envNames: z.ZodOptional<z.ZodObject<{
server: z.ZodOptional<z.ZodString>;
db: z.ZodOptional<z.ZodString>;
auth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
apiKey: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>]>>;
}, z.core.$strip>>;
export declare const typegenConfigSingle: z.ZodObject<{
envNames: z.ZodOptional<z.ZodObject<{
server: z.ZodOptional<z.ZodString>;
db: z.ZodOptional<z.ZodString>;
auth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
apiKey: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>]>>;
}, z.core.$strip>>;
layouts: z.ZodArray<z.ZodObject<{
layoutName: z.ZodString;
schemaName: z.ZodString;
valueLists: z.ZodOptional<z.ZodEnum<{
strict: "strict";
allowEmpty: "allowEmpty";
ignore: "ignore";
}>>;
generateClient: z.ZodOptional<z.ZodBoolean>;
strictNumbers: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
path: z.ZodOptional<z.ZodDefault<z.ZodString>>;
clearOldFiles: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
validator: z.ZodOptional<z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
zod: "zod";
"zod/v4": "zod/v4";
"zod/v3": "zod/v3";
}>, z.ZodLiteral<false>]>>>;
clientSuffix: z.ZodOptional<z.ZodDefault<z.ZodString>>;
generateClient: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
webviewerScriptName: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const typegenConfig: z.ZodObject<{
config: z.ZodUnion<readonly [z.ZodObject<{
envNames: z.ZodOptional<z.ZodObject<{
server: z.ZodOptional<z.ZodString>;
db: z.ZodOptional<z.ZodString>;
auth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
apiKey: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>]>>;
}, z.core.$strip>>;
layouts: z.ZodArray<z.ZodObject<{
layoutName: z.ZodString;
schemaName: z.ZodString;
valueLists: z.ZodOptional<z.ZodEnum<{
strict: "strict";
allowEmpty: "allowEmpty";
ignore: "ignore";
}>>;
generateClient: z.ZodOptional<z.ZodBoolean>;
strictNumbers: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
path: z.ZodOptional<z.ZodDefault<z.ZodString>>;
clearOldFiles: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
validator: z.ZodOptional<z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
zod: "zod";
"zod/v4": "zod/v4";
"zod/v3": "zod/v3";
}>, z.ZodLiteral<false>]>>>;
clientSuffix: z.ZodOptional<z.ZodDefault<z.ZodString>>;
generateClient: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
webviewerScriptName: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodArray<z.ZodObject<{
envNames: z.ZodOptional<z.ZodObject<{
server: z.ZodOptional<z.ZodString>;
db: z.ZodOptional<z.ZodString>;
auth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
apiKey: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>]>>;
}, z.core.$strip>>;
layouts: z.ZodArray<z.ZodObject<{
layoutName: z.ZodString;
schemaName: z.ZodString;
valueLists: z.ZodOptional<z.ZodEnum<{
strict: "strict";
allowEmpty: "allowEmpty";
ignore: "ignore";
}>>;
generateClient: z.ZodOptional<z.ZodBoolean>;
strictNumbers: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
path: z.ZodOptional<z.ZodDefault<z.ZodString>>;
clearOldFiles: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
validator: z.ZodOptional<z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
zod: "zod";
"zod/v4": "zod/v4";
"zod/v3": "zod/v3";
}>, z.ZodLiteral<false>]>>>;
clientSuffix: z.ZodOptional<z.ZodDefault<z.ZodString>>;
generateClient: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
webviewerScriptName: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>]>;
}, z.core.$strip>;
export type TypegenConfig = z.infer<typeof typegenConfig>;
export type TSchema = {
name: string;
type: "string" | "fmnumber" | "valueList";
values?: string[];
};
export type BuildSchemaArgs = {
schemaName: string;
schema: Array<TSchema>;
type: "zod" | "zod/v4" | "zod/v3" | "ts";
portalSchema?: {
schemaName: string;
schema: Array<TSchema>;
}[];
valueLists?: {
name: string;
values: string[];
}[];
envNames: NonNullable<z.infer<typeof envNames>>;
layoutName: string;
strictNumbers?: boolean;
webviewerScriptName?: string;
};
export {};