@sovrium/types 0.4.0 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +3 -3
- package/package.json +4 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// Auto-generated by scripts/build-types.ts — DO NOT EDIT
|
|
2
2
|
// This file contains zero-dependency TypeScript types for Sovrium app configuration.
|
|
3
3
|
|
|
4
|
-
export type AppConfig = { readonly name: string; readonly description?: string | undefined; readonly version?: string | undefined; readonly tables?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-line-text"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "long-text"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "phone-number"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "email"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "url"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "integer"; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "decimal"; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "currency"; readonly currency: string; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; readonly symbolPosition?: "before" | "after" | undefined; readonly negativeFormat?: "minus" | "parentheses" | undefined; readonly thousandsSeparator?: "comma" | "period" | "space" | "none" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "percentage"; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "date"; readonly default?: string | undefined; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly includeTime?: boolean | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "datetime"; readonly default?: string | undefined; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "time"; readonly default?: string | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "checkbox"; readonly default?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-select"; readonly options: ReadonlyArray<string>; readonly default?: string | undefined; readonly conditions?: ReadonlyArray<{ readonly when: string; readonly then: { readonly [x: string]: unknown; }; }> | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "multi-select"; readonly options: ReadonlyArray<string>; readonly default?: ReadonlyArray<string> | undefined; readonly maxSelections?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "relationship"; readonly relatedTable: string; readonly relationType?: string | undefined; readonly foreignKey?: string | undefined; readonly displayField?: string | undefined; readonly onDelete?: string | undefined; readonly onUpdate?: string | undefined; readonly reciprocalField?: string | undefined; readonly allowMultiple?: boolean | undefined; readonly limitToView?: string | undefined; readonly relatedField?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-attachment"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly generateThumbnail?: boolean | undefined; readonly storeMetadata?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "multiple-attachments"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly storeMetadata?: boolean | undefined; readonly maxFiles?: number | undefined; readonly generateThumbnails?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "formula"; readonly formula: string; readonly format?: string | undefined; readonly resultType?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rollup"; readonly relatedField: string; readonly relationshipField: string; readonly aggregation: string; readonly format?: string | undefined; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "lookup"; readonly relatedField: string; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "count"; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "user"; readonly allowMultiple?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rating"; readonly default?: number | undefined; readonly max?: number | undefined; readonly style?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "duration"; readonly default?: number | undefined; readonly format?: string | undefined; readonly displayFormat?: "decimal" | "h:mm" | "h:mm:ss" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rich-text"; readonly maxLength?: number | undefined; readonly fullTextSearch?: boolean | undefined; readonly toolbar?: ReadonlyArray<string> | undefined; readonly placeholder?: string | undefined; readonly collaborative?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "status"; readonly options: ReadonlyArray<{ readonly value: string; readonly color?: string | undefined; }>; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "button"; readonly label: string; readonly action: string; readonly url?: string | undefined; readonly automation?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "autonumber"; readonly prefix?: string | undefined; readonly startFrom?: number | undefined; readonly digits?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "barcode"; readonly format?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "color"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: /** @deprecated COMING SOON — not yet implemented. */ "progress"; readonly default?: number | undefined; readonly color?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "geolocation"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "json"; readonly schema?: {} | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "array"; readonly itemType?: string | undefined; readonly maxItems?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "code"; readonly language: string; readonly lineNumbers?: boolean | undefined; readonly readOnly?: boolean | undefined; readonly minLines?: number | undefined; readonly maxLines?: number | undefined; readonly tabSize?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-categorize"; readonly sourceFields: ReadonlyArray<string>; readonly categories: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly schema: { readonly [x: string]: unknown; }; readonly type: "ai-extract"; readonly sourceFields: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-generate"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-sentiment"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-summary"; readonly sourceFields: ReadonlyArray<string>; readonly maxLength?: number | undefined; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-tag"; readonly tags: ReadonlyArray<string>; readonly sourceFields: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly maxTags?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-translate"; readonly sourceFields: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly targetLanguage: string; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; }) | { readonly name: string; readonly type: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; }>; readonly id?: string | number | undefined; readonly unique?: ReadonlyArray<{ readonly fields: ReadonlyArray<string>; }> | undefined; readonly primaryKey?: { readonly type: string; readonly field?: string | undefined; readonly fields?: ReadonlyArray<string> | undefined; } | undefined; readonly indexes?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<string>; readonly where?: string | undefined; readonly unique?: boolean | undefined; }> | undefined; readonly views?: ReadonlyArray<{ readonly name: string; readonly id: string | number; readonly fields?: ReadonlyArray<string> | undefined; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; readonly query?: string | undefined; readonly materialized?: boolean | undefined; readonly refreshOnMigration?: boolean | undefined; readonly isDefault?: boolean | undefined; readonly sorts?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly groupBy?: { readonly field: string; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly permissions?: { readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | undefined; } | { readonly public: true; } | undefined; }> | undefined; readonly permissions?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly inherit?: string | undefined; readonly fields?: ReadonlyArray<{ readonly field: string; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | "all" | "authenticated" | undefined; }> | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly override?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly admin?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; } | undefined; readonly foreignKeys?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<string>; readonly referencedTable: string; readonly referencedFields: ReadonlyArray<string>; readonly onDelete?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; readonly onUpdate?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; }> | undefined; readonly constraints?: ReadonlyArray<{ readonly name: string; readonly check: string; }> | undefined; readonly rowLevelPermissions?: { readonly delete?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly create?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly read?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly write?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; } | undefined; readonly allowDestructive?: boolean | undefined; readonly allowForceDelete?: boolean | undefined; readonly webhooks?: ReadonlyArray<{ readonly name: string; readonly url: string; readonly events: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create">; readonly enabled?: boolean | undefined; readonly auth?: { readonly type: /** @deprecated COMING SOON — not yet implemented. */ "hmac"; readonly secret: string; readonly algorithm?: "sha256" | "sha1" | undefined; readonly header?: string | undefined; } | { readonly key: string; readonly type: "apiKey"; readonly header?: string | undefined; } | { readonly type: "bearer"; readonly token: string; } | undefined; readonly retry?: { readonly maxAttempts: number; readonly backoff?: "exponential" | "fixed" | undefined; readonly initialDelay?: number | undefined; readonly maxDelay?: number | undefined; } | undefined; readonly payload?: { readonly includeFields?: ReadonlyArray<string> | undefined; readonly excludeFields?: ReadonlyArray<string> | undefined; readonly includePreviousValues?: boolean | undefined; readonly includeMetadata?: boolean | undefined; } | undefined; }> | undefined; readonly comments?: { readonly guestComments?: boolean | undefined; readonly guestEmailRequired?: boolean | undefined; readonly threading?: boolean | undefined; readonly moderation?: boolean | undefined; readonly autoApprove?: { readonly authenticated?: boolean | undefined; readonly previouslyApproved?: boolean | undefined; } | undefined; } | undefined; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create" | /** @deprecated COMING SOON — not yet implemented. */ "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined; }> | undefined; readonly auth?: { readonly strategies: readonly [{ readonly type: "emailAndPassword"; readonly minPasswordLength?: number | undefined; readonly maxPasswordLength?: number | undefined; readonly requireEmailVerification?: boolean | undefined; readonly autoSignIn?: boolean | undefined; } | { readonly type: "magicLink"; readonly expirationMinutes?: number | undefined; } | { readonly type: "oauth"; readonly providers: readonly ["google" | "github" | "microsoft" | "slack" | "gitlab", ...("google" | "github" | "microsoft" | "slack" | "gitlab")[]]; }, ...({ readonly type: "emailAndPassword"; readonly minPasswordLength?: number | undefined; readonly maxPasswordLength?: number | undefined; readonly requireEmailVerification?: boolean | undefined; readonly autoSignIn?: boolean | undefined; } | { readonly type: "magicLink"; readonly expirationMinutes?: number | undefined; } | { readonly type: "oauth"; readonly providers: readonly ["google" | "github" | "microsoft" | "slack" | "gitlab", ...("google" | "github" | "microsoft" | "slack" | "gitlab")[]]; })[]]; readonly allowSignUp?: boolean | undefined; readonly roles?: ReadonlyArray<{ readonly name: string; readonly description?: string | undefined; readonly level?: number | undefined; readonly defaultLanding?: string | undefined; readonly pickerLanding?: string | undefined; }> | undefined; readonly defaultRole?: string | undefined; readonly twoFactor?: boolean | { readonly period?: number | undefined; readonly digits?: number | undefined; readonly issuer?: string | undefined; readonly backupCodes?: boolean | undefined; } | undefined; readonly emailTemplates?: { readonly magicLink?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly verification?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly resetPassword?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly emailOtp?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly twoFactorBackupCodes?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly welcome?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly accountDeletion?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly invitation?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; } | undefined; readonly invitationTokenExpiry?: string | number | undefined; readonly groups?: ReadonlyArray<{ readonly name: string; readonly description?: string | undefined; readonly maxMembers?: number | undefined; }> | undefined; readonly scopeTables?: ReadonlyArray<string> | undefined; readonly landingPath?: string | undefined; readonly noAccessPath?: string | undefined; } | undefined; readonly theme?: { readonly colors?: { readonly [x: string]: string; } | undefined; readonly darkColors?: { readonly [x: string]: string; } | undefined; readonly fonts?: { readonly [x: string]: { readonly family: string; readonly url?: string | undefined; readonly style?: "italic" | "normal" | "oblique" | undefined; readonly fallback?: string | undefined; readonly weights?: ReadonlyArray<100 | 500 | 200 | 300 | 400 | 600 | 700 | 800 | 900> | undefined; readonly size?: string | undefined; readonly lineHeight?: string | undefined; readonly letterSpacing?: string | undefined; readonly transform?: "none" | "uppercase" | "lowercase" | "capitalize" | undefined; }; } | undefined; readonly spacing?: { readonly [x: string]: string; } | undefined; readonly animations?: { readonly [x: string]: string | boolean | { readonly duration?: string | undefined; readonly enabled?: boolean | undefined; readonly easing?: string | undefined; readonly keyframes?: { readonly [x: string]: unknown; } | undefined; readonly delay?: string | undefined; } | { readonly [x: string]: string; } | { readonly [x: string]: string; } | { readonly [x: string]: { readonly [x: string]: unknown; }; }; } | undefined; readonly breakpoints?: { readonly [x: string]: string; } | undefined; readonly shadows?: { readonly [x: string]: string; } | undefined; readonly borderRadius?: { readonly [x: string]: string; } | undefined; } | undefined; readonly languages?: { readonly default: string; readonly supported: ReadonlyArray<{ readonly label: string; readonly code: string; readonly direction?: "ltr" | "rtl" | undefined; readonly locale?: string | undefined; readonly flag?: string | undefined; }>; readonly fallback?: string | undefined; readonly detectBrowser?: boolean | undefined; readonly persistSelection?: boolean | undefined; readonly translations?: { readonly [x: string]: { readonly [x: string]: string; }; } | undefined; } | undefined; readonly analytics?: boolean | { readonly retentionDays?: number | undefined; readonly excludedPaths?: ReadonlyArray<string> | undefined; readonly respectDoNotTrack?: boolean | undefined; readonly sessionTimeout?: number | undefined; } | undefined; readonly components?: ReadonlyArray<any> | undefined; readonly pages?: ReadonlyArray<{ readonly name: string; readonly path: string; readonly components: ReadonlyArray<any>; readonly id?: string | undefined; readonly meta?: { readonly title: string; readonly description?: string | undefined; readonly schema?: unknown; readonly author?: string | undefined; readonly priority?: number | undefined; readonly analytics?: { readonly [x: string]: unknown; } | { readonly providers: ReadonlyArray<{ readonly name: "google" | "plausible" | "matomo" | "fathom" | "posthog" | "mixpanel"; readonly enabled?: boolean | undefined; readonly dnsPrefetch?: string | undefined; readonly scripts?: ReadonlyArray<{ readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; }> | undefined; readonly initScript?: string | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }>; } | undefined; readonly lang?: string | undefined; readonly keywords?: string | undefined; readonly canonical?: string | undefined; readonly robots?: string | undefined; readonly noindex?: boolean | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; readonly favicon?: string | undefined; readonly favicons?: ReadonlyArray<{ readonly rel: "icon" | "apple-touch-icon" | "manifest" | "mask-icon"; readonly href: string; readonly type?: string | undefined; readonly color?: string | undefined; readonly sizes?: string | undefined; }> | { readonly icon?: string | undefined; readonly sizes?: ReadonlyArray<{ readonly size: string; readonly href: string; }> | undefined; readonly appleTouchIcon?: string | undefined; } | undefined; readonly stylesheet?: string | undefined; readonly googleFonts?: string | undefined; readonly socialImage?: string | undefined; readonly openGraph?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly type?: "website" | "article" | "book" | "profile" | "video" | "music" | undefined; readonly url?: string | undefined; readonly locale?: string | undefined; readonly video?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly siteName?: string | undefined; readonly determiner?: "" | "a" | "an" | "the" | "auto" | undefined; readonly audio?: string | undefined; } | undefined; readonly twitter?: { readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly preload?: ReadonlyArray<{ readonly as: "style" | "video" | "image" | "audio" | "script" | "font" | "document" | "fetch"; readonly href: string; readonly type?: string | undefined; readonly crossorigin?: boolean | "anonymous" | "use-credentials" | undefined; readonly media?: string | undefined; }> | undefined; readonly dnsPrefetch?: ReadonlyArray<string> | undefined; readonly customElements?: ReadonlyArray<{ readonly type: "style" | "link" | "meta" | "script" | "base"; readonly attrs?: { readonly [x: string]: string; } | undefined; readonly content?: string | undefined; }> | undefined; readonly viewport?: string | undefined; readonly twitterCard?: { readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly structuredData?: unknown; readonly "og:site_name"?: string | undefined; readonly i18n?: { readonly [x: string]: { readonly title?: string | undefined; readonly description?: string | undefined; }; } | undefined; } | undefined; readonly scripts?: { readonly features?: { readonly [x: string]: boolean | { readonly enabled?: boolean | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }; } | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; readonly externalScripts?: ReadonlyArray<{ readonly src: string; readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly external?: ReadonlyArray<{ readonly src: string; readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly inlineScripts?: ReadonlyArray<{ readonly code: string; readonly async?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; }> | undefined; } | undefined; readonly vars?: { readonly [x: string]: string | number | boolean; } | undefined; readonly access?: ReadonlyArray<string> | "all" | "authenticated" | { readonly require: ReadonlyArray<string> | "all" | "authenticated"; readonly redirectTo?: string | undefined; } | undefined; readonly toasts?: { readonly duration?: number | undefined; readonly position?: "top-right" | "top-left" | "top-center" | "bottom-right" | "bottom-left" | "bottom-center" | undefined; } | undefined; readonly collection?: { readonly table: string; readonly slugField: string; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; } | undefined; readonly sitemap?: false | { readonly priority?: number | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; } | undefined; readonly rss?: boolean | { readonly limit?: number | undefined; } | undefined; readonly layout?: { readonly header?: { readonly components: ReadonlyArray<{ readonly type: "notificationBell"; readonly position?: "left" | "right" | undefined; }>; } | undefined; readonly sidebar?: ReadonlyArray<{ readonly dataSource: { readonly table: string; readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; }; readonly template: { readonly label: string; readonly href: string; readonly archivedField?: string | undefined; }; readonly activeIndicator?: "$currentUser.activeAssignment" | undefined; }> | undefined; } | undefined; readonly dataSource?: { readonly table: string; readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly limit?: number | undefined; readonly fields?: ReadonlyArray<string> | undefined; readonly mode?: /** @deprecated COMING SOON — not yet implemented. */ "list" | "search" | "single" | undefined; readonly pagination?: { readonly pageSize: number; readonly style?: "numbered" | "loadMore" | "infinite" | undefined; } | undefined; readonly param?: string | undefined; readonly searchEngine?: "client" | "fts" | "trigram" | "hybrid" | undefined; readonly searchFields?: ReadonlyArray<string> | undefined; readonly debounceMs?: number | undefined; readonly targetId?: string | undefined; readonly bindTo?: string | undefined; } | undefined; readonly viewTransition?: { readonly type: "none" | "fade" | "slide"; readonly duration?: number | undefined; readonly direction?: "left" | "right" | "up" | "down" | undefined; } | undefined; readonly markdown?: { readonly content?: string | undefined; readonly layout?: "full" | "prose" | "docs" | undefined; readonly file?: string | undefined; readonly toc?: { readonly position?: "sidebar" | "top" | undefined; readonly maxDepth?: number | undefined; } | undefined; } | undefined; readonly contentDir?: { readonly directory: string; readonly slugFrom: "filename" | "filepath"; readonly sort?: { readonly field: string; readonly order?: "asc" | "desc" | undefined; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly filter?: { readonly [x: string]: unknown; } | undefined; readonly include?: string | undefined; } | undefined; readonly source?: { readonly file: string; } | undefined; readonly presence?: boolean | undefined; readonly allowedTables?: ReadonlyArray<string> | undefined; }> | undefined; readonly scripts?: { readonly config?: { readonly [x: string]: unknown; } | undefined; readonly external?: ReadonlyArray<{ readonly src: string; readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly inline?: ReadonlyArray<{ readonly code: string; readonly async?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; }> | undefined; } | undefined; readonly forms?: ReadonlyArray<{ readonly title: string; readonly name: string; readonly id: number; readonly fields: ReadonlyArray<{ readonly column: string; readonly kind: "table-field"; readonly required?: boolean | undefined; readonly maxFileSize?: number | undefined; readonly maxFiles?: number | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly accept?: string | undefined; readonly dropZone?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; } | { readonly name: string; readonly kind: "standalone"; readonly inputType: "number" | "select" | "email" | "long-text" | "url" | "date" | "datetime" | "checkbox" | "multi-select" | "rating" | "short-text" | "phone" | "radio" | "attachment"; readonly required?: boolean | undefined; readonly options?: ReadonlyArray<{ readonly value: string; readonly label?: string | undefined; }> | undefined; readonly maxFileSize?: number | undefined; readonly maxFiles?: number | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly accept?: string | undefined; readonly dropZone?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; } | { readonly name: string; readonly formula: string; readonly kind: "calculation"; readonly required?: boolean | undefined; readonly format?: "number" | "currency" | "text" | "percent" | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; } | { readonly kind: "section"; readonly description?: string | undefined; readonly heading?: string | undefined; readonly visibleWhen?: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; } | undefined; } | { readonly name: string; readonly kind: "signature"; readonly required?: boolean | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; }>; readonly submitTo: { readonly table?: string | undefined; readonly automation?: string | undefined; readonly mapping?: { readonly [x: string]: string; } | undefined; readonly storeSubmission?: boolean | undefined; }; readonly description?: string | undefined; readonly path?: string | undefined; readonly analytics?: { readonly enabled?: boolean | undefined; } | undefined; readonly access?: { readonly require: ReadonlyArray<string> | "all" | "authenticated"; readonly redirectTo?: string | undefined; } | undefined; readonly layout?: "single-page" | "multi-step" | "one-question" | undefined; readonly steps?: ReadonlyArray<{ readonly id: string; readonly fields: ReadonlyArray<string>; readonly title?: string | undefined; readonly description?: string | undefined; readonly visibleWhen?: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; } | undefined; readonly goToWhen?: ReadonlyArray<{ readonly when: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; }; readonly goTo: string; }> | undefined; }> | undefined; readonly fieldGroups?: ReadonlyArray<{ readonly fields: ReadonlyArray<string>; readonly label: string; readonly visibleWhen?: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; } | undefined; }> | undefined; readonly display?: { readonly theme?: { readonly borderRadius?: string | undefined; readonly primaryColor?: string | undefined; readonly backgroundColor?: string | undefined; } | undefined; readonly columns?: number | undefined; readonly progressBar?: boolean | undefined; readonly submitLabel?: string | undefined; } | undefined; readonly availability?: { readonly opensAt?: string | undefined; readonly closesAt?: string | undefined; readonly maxSubmissions?: number | undefined; } | undefined; readonly antiSpam?: { readonly honeypot?: boolean | undefined; readonly rateLimit?: { readonly windowSeconds: number; readonly perIp?: number | undefined; readonly perForm?: number | undefined; } | undefined; readonly captcha?: string | undefined; } | undefined; readonly prefill?: { readonly [x: string]: string | number | boolean; } | undefined; readonly submitter?: { readonly saveAndResume?: boolean | undefined; readonly allowEditAfterSubmit?: boolean | undefined; readonly requireUniqueSubmission?: boolean | undefined; } | undefined; readonly onSuccess?: { readonly type: "successPage"; readonly message?: string | undefined; readonly title?: string | undefined; readonly buttonLabel?: string | undefined; readonly buttonHref?: string | undefined; readonly actions?: ReadonlyArray<{ readonly label: string; readonly action: "reset" | "navigate"; readonly url?: string | undefined; }> | undefined; readonly showSummary?: boolean | undefined; } | { readonly type: "redirect"; readonly url: string; readonly delaySeconds?: number | undefined; } | { readonly type: "reset"; readonly message?: string | undefined; readonly preserveFields?: ReadonlyArray<string> | undefined; } | { readonly message: string; readonly type: "toast"; readonly variant?: "success" | "info" | undefined; } | { readonly message: string; readonly type: "message"; } | undefined; readonly onError?: { readonly message: string; readonly type: "message" | "toast" | "errorPage"; readonly title?: string | undefined; readonly variant?: "error" | "warning" | undefined; } | undefined; readonly share?: { readonly embeddable?: boolean | undefined; readonly allowedOrigins?: ReadonlyArray<string> | undefined; readonly password?: string | undefined; } | undefined; }> | undefined; readonly actions?: ReadonlyArray<{ readonly name: string; readonly action: unknown; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create" | /** @deprecated COMING SOON — not yet implemented. */ "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined; readonly variables?: { readonly [x: string]: unknown; } | undefined; }> | undefined; readonly connections?: ReadonlyArray<{ readonly name: string; readonly type: "oauth2"; readonly props: { readonly clientId: string; readonly clientSecret: string; readonly provider?: string | undefined; readonly authorizationUrl?: string | undefined; readonly tokenUrl?: string | undefined; readonly scopes?: ReadonlyArray<string> | undefined; readonly redirectUri?: string | undefined; readonly grantType?: "authorizationCode" | "clientCredentials" | undefined; readonly pkce?: "none" | "S256" | "plain" | undefined; readonly audience?: string | undefined; readonly authenticationMethod?: "body" | "header" | undefined; readonly extraAuthParams?: { readonly [x: string]: string; } | undefined; readonly extraTokenParams?: { readonly [x: string]: string; } | undefined; readonly scope?: "user" | "app" | undefined; readonly _test?: { readonly seedExpired?: boolean | undefined; readonly seedExpiredFor?: ReadonlyArray<string> | undefined; } | undefined; }; readonly description?: string | undefined; readonly label?: string | undefined; } | { readonly name: string; readonly type: "apiKey"; readonly props: { readonly key: string; readonly prefix?: string | undefined; readonly header?: string | undefined; }; readonly description?: string | undefined; readonly label?: string | undefined; } | { readonly name: string; readonly type: "basic"; readonly props: { readonly password: string; readonly username: string; }; readonly description?: string | undefined; readonly label?: string | undefined; } | { readonly name: string; readonly type: "bearer"; readonly props: { readonly token: string; }; readonly description?: string | undefined; readonly label?: string | undefined; }> | undefined; readonly env?: ReadonlyArray<{ readonly key: string; readonly description?: string | undefined; readonly default?: string | undefined; readonly required?: boolean | undefined; }> | undefined; readonly automations?: ReadonlyArray<{ readonly name: string; readonly actions: ReadonlyArray<unknown>; readonly trigger: { readonly type: "webhook"; readonly method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | ReadonlyArray<"GET" | "POST" | "PUT" | "PATCH" | "DELETE">; readonly auth?: { readonly type: /** @deprecated COMING SOON — not yet implemented. */ "hmac" | "apiKey" | "bearer" | "basic"; readonly key?: string | undefined; readonly prefix?: string | undefined; readonly secret?: string | undefined; readonly algorithm?: string | undefined; readonly header?: string | undefined; readonly token?: string | undefined; readonly password?: string | undefined; readonly username?: string | undefined; } | undefined; readonly secret?: string | undefined; readonly rateLimit?: { readonly windowSeconds?: number | undefined; readonly maxRequests?: number | undefined; readonly window?: number | undefined; } | undefined; readonly respondImmediately?: boolean | undefined; readonly response?: { readonly status?: number | undefined; readonly body?: string | { readonly [x: string]: unknown; } | undefined; readonly statusCode?: number | undefined; readonly headers?: { readonly [x: string]: string; } | undefined; } | undefined; readonly requestSchema?: { readonly [x: string]: unknown; } | undefined; readonly querySchema?: { readonly [x: string]: unknown; } | undefined; readonly deduplicationKey?: string | undefined; readonly deduplicationWindow?: number | undefined; } | { readonly type: "cron"; readonly expression: string; readonly timezone?: string | undefined; } | { readonly table: string; readonly type: /** @deprecated COMING SOON — not yet implemented. */ "record"; readonly events: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create">; readonly watchFields?: ReadonlyArray<string> | undefined; readonly condition?: { readonly conditions: ReadonlyArray<{ readonly field: string; readonly operator: "equals" | "endsWith" | "startsWith" | "contains" | "notEquals" | "notContains" | "greaterThan" | "greaterThanOrEqual" | "lessThan" | "lessThanOrEqual" | "isEmpty" | "isNotEmpty" | "isNull" | "isNotNull" | "matches"; readonly value?: string | number | boolean | null | undefined; }>; readonly logic?: "and" | "or" | undefined; } | undefined; } | { readonly type: /** @deprecated COMING SOON — not yet implemented. */ "auth"; readonly events: ReadonlyArray<"signUp" | "signIn" | "signOut" | "passwordReset" | "emailVerified">; } | { readonly type: "form"; readonly form: string; } | { readonly type: "manual"; readonly label?: string | undefined; readonly inputSchema?: { readonly [x: string]: unknown; } | undefined; readonly requiredRole?: string | undefined; } | { readonly type: "automation-call"; readonly inputSchema?: { readonly [x: string]: unknown; } | undefined; } | { readonly type: "automation-failure"; readonly automations?: ReadonlyArray<string> | undefined; } | { readonly table: string; readonly type: "comment"; readonly filter?: { readonly topLevelOnly?: boolean | undefined; readonly repliesOnly?: boolean | undefined; readonly mentionsOnly?: boolean | undefined; } | undefined; readonly when?: "any" | "approved" | "created" | undefined; readonly respectReadPermissions?: boolean | undefined; }; readonly description?: string | undefined; readonly tags?: ReadonlyArray<string> | undefined; readonly label?: string | undefined; readonly permissions?: { readonly trigger?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly enabled?: boolean | undefined; readonly retry?: { readonly maxAttempts: number; readonly delayMs?: number | undefined; readonly strategy?: "exponential" | "fixed" | undefined; } | undefined; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create" | /** @deprecated COMING SOON — not yet implemented. */ "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined; readonly timeout?: number | undefined; }> | undefined; readonly agents?: ReadonlyArray<{ readonly name: string; readonly systemPrompt: string; readonly role: string; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly permissions?: { readonly type: /** @deprecated COMING SOON — not yet implemented. */ "agent"; readonly trigger?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly emailDomain?: string | undefined; } | undefined; readonly enabled?: boolean | undefined; readonly approval?: { readonly required?: ReadonlyArray<string> | undefined; readonly mode?: "all" | "none" | "selective" | undefined; readonly timeout?: number | undefined; readonly escalation?: { readonly after: number; readonly to: string; } | undefined; } | undefined; readonly instructions?: ReadonlyArray<string> | undefined; readonly tools?: { readonly tables: ReadonlyArray<string>; readonly actions: ReadonlyArray<"record.delete" | "email.send" | "record.read" | "record.create" | "record.update" | "state.get" | "state.set" | "state.increment" | "state.delete" | "state.list" | "http.request" | "ai.generate" | "ai.classify" | "ai.extract" | "code.runTypescript" | "auth.createUser" | "auth.assignRole" | "auth.banUser" | "auth.unbanUser" | "file.upload" | "file.download" | "file.delete" | "file.list" | "file.getMetadata">; } | undefined; readonly limits?: { readonly maxActionsPerMinute?: number | undefined; readonly maxTokensPerDay?: number | undefined; readonly maxConcurrentTasks?: number | undefined; } | undefined; readonly memory?: { readonly conversation?: { readonly enabled?: boolean | undefined; readonly windowSize?: number | undefined; readonly summarize?: boolean | undefined; } | undefined; readonly knowledge?: { readonly enabled?: boolean | undefined; readonly sources?: ReadonlyArray<string> | undefined; readonly retrievalLimit?: number | undefined; readonly similarityThreshold?: number | undefined; } | undefined; readonly facts?: { readonly enabled?: boolean | undefined; readonly maxFacts?: number | undefined; readonly namespace?: string | undefined; } | undefined; } | undefined; readonly knowledge?: { readonly tables?: ReadonlyArray<{ readonly table: string; readonly fields: ReadonlyArray<string>; readonly filter?: { readonly [x: string]: unknown; } | undefined; }> | undefined; readonly documents?: ReadonlyArray<{ readonly path: string; readonly label?: string | undefined; }> | undefined; } | undefined; readonly schedule?: { readonly cron: string; readonly taskPrompt: string; readonly timezone?: string | undefined; } | undefined; readonly mcp?: { readonly allowedTools?: ReadonlyArray<string> | undefined; } | undefined; }> | undefined; readonly buckets?: ReadonlyArray<{ readonly name: string; readonly maxFileSize?: number | undefined; readonly permissions?: { readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly upload?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly download?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly sign?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly signUpload?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly public?: boolean | undefined; readonly allowedMimeTypes?: ReadonlyArray<string> | undefined; }> | undefined; readonly notifications?: { readonly channels?: ReadonlyArray<{ readonly type: "inApp"; readonly enabled?: boolean | undefined; } | { readonly from: string; readonly type: "email"; readonly enabled?: boolean | undefined; readonly digest?: { readonly defaultFrequency: "hourly" | "daily" | "immediate"; readonly dailyTime?: string | undefined; } | undefined; readonly replyTo?: string | undefined; }> | undefined; readonly templates?: { readonly [x: string]: { readonly title: string; readonly body: string; readonly channels?: ReadonlyArray<"email" | "inApp"> | undefined; }; } | undefined; readonly recordSubscriptions?: ReadonlyArray<{ readonly table: string; readonly events: ReadonlyArray<"created" | "updated" | "deleted">; readonly fields?: ReadonlyArray<string> | undefined; readonly defaultSubscribers?: { readonly users?: ReadonlyArray<string> | undefined; readonly roles?: ReadonlyArray<string> | undefined; } | undefined; }> | undefined; } | undefined;}
|
|
4
|
+
export type AppConfig = { readonly name: string; readonly description?: string | undefined; readonly version?: string | undefined; readonly tables?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-line-text"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "long-text"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "phone-number"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "email"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "url"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "integer"; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "decimal"; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "currency"; readonly currency: string; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; readonly symbolPosition?: "before" | "after" | undefined; readonly negativeFormat?: "minus" | "parentheses" | undefined; readonly thousandsSeparator?: "comma" | "period" | "space" | "none" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "percentage"; readonly default?: number | undefined; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "date"; readonly default?: string | undefined; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly includeTime?: boolean | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "datetime"; readonly default?: string | undefined; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "time"; readonly default?: string | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "checkbox"; readonly default?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-select"; readonly options: ReadonlyArray<string>; readonly default?: string | undefined; readonly conditions?: ReadonlyArray<{ readonly when: string; readonly then: { readonly [x: string]: unknown; }; }> | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "multi-select"; readonly options: ReadonlyArray<string>; readonly default?: ReadonlyArray<string> | undefined; readonly maxSelections?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "relationship"; readonly relatedTable: string; readonly relationType?: string | undefined; readonly foreignKey?: string | undefined; readonly displayField?: string | undefined; readonly onDelete?: string | undefined; readonly onUpdate?: string | undefined; readonly reciprocalField?: string | undefined; readonly allowMultiple?: boolean | undefined; readonly limitToView?: string | undefined; readonly relatedField?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-attachment"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly generateThumbnail?: boolean | undefined; readonly storeMetadata?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "multiple-attachments"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly storeMetadata?: boolean | undefined; readonly maxFiles?: number | undefined; readonly generateThumbnails?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "formula"; readonly formula: string; readonly format?: string | undefined; readonly resultType?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rollup"; readonly relatedField: string; readonly relationshipField: string; readonly aggregation: string; readonly format?: string | undefined; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "lookup"; readonly relatedField: string; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "count"; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "user"; readonly allowMultiple?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rating"; readonly default?: number | undefined; readonly max?: number | undefined; readonly style?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "duration"; readonly default?: number | undefined; readonly format?: string | undefined; readonly displayFormat?: "decimal" | "h:mm" | "h:mm:ss" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rich-text"; readonly maxLength?: number | undefined; readonly fullTextSearch?: boolean | undefined; readonly toolbar?: ReadonlyArray<string> | undefined; readonly placeholder?: string | undefined; readonly collaborative?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "status"; readonly options: ReadonlyArray<{ readonly value: string; readonly color?: string | undefined; }>; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "button"; readonly label: string; readonly action: string; readonly url?: string | undefined; readonly automation?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "autonumber"; readonly prefix?: string | undefined; readonly startFrom?: number | undefined; readonly digits?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "barcode"; readonly format?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "color"; readonly default?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "progress"; readonly default?: number | undefined; readonly color?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "geolocation"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "json"; readonly schema?: {} | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "array"; readonly itemType?: string | undefined; readonly maxItems?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "code"; readonly language: string; readonly lineNumbers?: boolean | undefined; readonly readOnly?: boolean | undefined; readonly minLines?: number | undefined; readonly maxLines?: number | undefined; readonly tabSize?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-categorize"; readonly sourceFields: ReadonlyArray<string>; readonly categories: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly schema: { readonly [x: string]: unknown; }; readonly type: "ai-extract"; readonly sourceFields: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-generate"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-sentiment"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-summary"; readonly sourceFields: ReadonlyArray<string>; readonly maxLength?: number | undefined; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-tag"; readonly tags: ReadonlyArray<string>; readonly sourceFields: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly maxTags?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-translate"; readonly sourceFields: ReadonlyArray<string>; readonly computeOn: "update" | "create" | "both"; readonly targetLanguage: string; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; }) | { readonly name: string; readonly type: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; }>; readonly id?: string | number | undefined; readonly unique?: ReadonlyArray<{ readonly fields: ReadonlyArray<string>; }> | undefined; readonly primaryKey?: { readonly type: string; readonly field?: string | undefined; readonly fields?: ReadonlyArray<string> | undefined; } | undefined; readonly indexes?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<string>; readonly where?: string | undefined; readonly unique?: boolean | undefined; }> | undefined; readonly views?: ReadonlyArray<{ readonly name: string; readonly id: string | number; readonly fields?: ReadonlyArray<string> | undefined; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; readonly query?: string | undefined; readonly materialized?: boolean | undefined; readonly refreshOnMigration?: boolean | undefined; readonly isDefault?: boolean | undefined; readonly sorts?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly groupBy?: { readonly field: string; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly permissions?: { readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | undefined; } | { readonly public: true; } | undefined; }> | undefined; readonly permissions?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly inherit?: string | undefined; readonly fields?: ReadonlyArray<{ readonly field: string; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | "all" | "authenticated" | undefined; }> | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly override?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly admin?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; } | undefined; readonly foreignKeys?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<string>; readonly referencedTable: string; readonly referencedFields: ReadonlyArray<string>; readonly onDelete?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; readonly onUpdate?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; }> | undefined; readonly constraints?: ReadonlyArray<{ readonly name: string; readonly check: string; }> | undefined; readonly rowLevelPermissions?: { readonly delete?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly create?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly read?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly write?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; } | undefined; readonly allowDestructive?: boolean | undefined; readonly allowForceDelete?: boolean | undefined; readonly webhooks?: ReadonlyArray<{ readonly name: string; readonly url: string; readonly events: ReadonlyArray<"update" | "delete" | "create">; readonly enabled?: boolean | undefined; readonly auth?: { readonly type: "hmac"; readonly secret: string; readonly algorithm?: "sha256" | "sha1" | undefined; readonly header?: string | undefined; } | { readonly key: string; readonly type: "apiKey"; readonly header?: string | undefined; } | { readonly type: "bearer"; readonly token: string; } | undefined; readonly retry?: { readonly maxAttempts: number; readonly backoff?: "exponential" | "fixed" | undefined; readonly initialDelay?: number | undefined; readonly maxDelay?: number | undefined; } | undefined; readonly payload?: { readonly includeFields?: ReadonlyArray<string> | undefined; readonly excludeFields?: ReadonlyArray<string> | undefined; readonly includePreviousValues?: boolean | undefined; readonly includeMetadata?: boolean | undefined; } | undefined; }> | undefined; readonly comments?: { readonly guestComments?: boolean | undefined; readonly guestEmailRequired?: boolean | undefined; readonly threading?: boolean | undefined; readonly moderation?: boolean | undefined; readonly autoApprove?: { readonly authenticated?: boolean | undefined; readonly previouslyApproved?: boolean | undefined; } | undefined; } | undefined; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | "delete" | "create" | "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined; }> | undefined; readonly auth?: { readonly strategies: readonly [{ readonly type: "emailAndPassword"; readonly minPasswordLength?: number | undefined; readonly maxPasswordLength?: number | undefined; readonly requireEmailVerification?: boolean | undefined; readonly autoSignIn?: boolean | undefined; } | { readonly type: "magicLink"; readonly expirationMinutes?: number | undefined; } | { readonly type: "oauth"; readonly providers: readonly ["google" | "github" | "microsoft" | "slack" | "gitlab", ...("google" | "github" | "microsoft" | "slack" | "gitlab")[]]; }, ...({ readonly type: "emailAndPassword"; readonly minPasswordLength?: number | undefined; readonly maxPasswordLength?: number | undefined; readonly requireEmailVerification?: boolean | undefined; readonly autoSignIn?: boolean | undefined; } | { readonly type: "magicLink"; readonly expirationMinutes?: number | undefined; } | { readonly type: "oauth"; readonly providers: readonly ["google" | "github" | "microsoft" | "slack" | "gitlab", ...("google" | "github" | "microsoft" | "slack" | "gitlab")[]]; })[]]; readonly allowSignUp?: boolean | undefined; readonly roles?: ReadonlyArray<{ readonly name: string; readonly description?: string | undefined; readonly level?: number | undefined; readonly defaultLanding?: string | undefined; readonly pickerLanding?: string | undefined; }> | undefined; readonly defaultRole?: string | undefined; readonly twoFactor?: boolean | { readonly period?: number | undefined; readonly digits?: number | undefined; readonly issuer?: string | undefined; readonly backupCodes?: boolean | undefined; } | undefined; readonly emailTemplates?: { readonly magicLink?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly verification?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly resetPassword?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly emailOtp?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly twoFactorBackupCodes?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly welcome?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly accountDeletion?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; readonly invitation?: { readonly subject: string; readonly text?: string | undefined; readonly html?: string | undefined; } | undefined; } | undefined; readonly invitationTokenExpiry?: string | number | undefined; readonly groups?: ReadonlyArray<{ readonly name: string; readonly description?: string | undefined; readonly maxMembers?: number | undefined; }> | undefined; readonly scopeTables?: ReadonlyArray<string> | undefined; readonly landingPath?: string | undefined; readonly noAccessPath?: string | undefined; } | undefined; readonly theme?: { readonly colors?: { readonly [x: string]: string; } | undefined; readonly darkColors?: { readonly [x: string]: string; } | undefined; readonly fonts?: { readonly [x: string]: { readonly family: string; readonly url?: string | undefined; readonly style?: "italic" | "normal" | "oblique" | undefined; readonly fallback?: string | undefined; readonly weights?: ReadonlyArray<100 | 500 | 200 | 300 | 400 | 600 | 700 | 800 | 900> | undefined; readonly size?: string | undefined; readonly lineHeight?: string | undefined; readonly letterSpacing?: string | undefined; readonly transform?: "none" | "uppercase" | "lowercase" | "capitalize" | undefined; }; } | undefined; readonly spacing?: { readonly [x: string]: string; } | undefined; readonly animations?: { readonly [x: string]: string | boolean | { readonly duration?: string | undefined; readonly enabled?: boolean | undefined; readonly easing?: string | undefined; readonly keyframes?: { readonly [x: string]: unknown; } | undefined; readonly delay?: string | undefined; } | { readonly [x: string]: string; } | { readonly [x: string]: string; } | { readonly [x: string]: { readonly [x: string]: unknown; }; }; } | undefined; readonly breakpoints?: { readonly [x: string]: string; } | undefined; readonly shadows?: { readonly [x: string]: string; } | undefined; readonly borderRadius?: { readonly [x: string]: string; } | undefined; } | undefined; readonly languages?: { readonly default: string; readonly supported: ReadonlyArray<{ readonly label: string; readonly code: string; readonly direction?: "ltr" | "rtl" | undefined; readonly locale?: string | undefined; readonly flag?: string | undefined; }>; readonly fallback?: string | undefined; readonly detectBrowser?: boolean | undefined; readonly persistSelection?: boolean | undefined; readonly translations?: { readonly [x: string]: { readonly [x: string]: string; }; } | undefined; } | undefined; readonly analytics?: boolean | { readonly retentionDays?: number | undefined; readonly excludedPaths?: ReadonlyArray<string> | undefined; readonly respectDoNotTrack?: boolean | undefined; readonly sessionTimeout?: number | undefined; } | undefined; readonly components?: ReadonlyArray<any> | undefined; readonly pages?: ReadonlyArray<{ readonly name: string; readonly path: string; readonly components: ReadonlyArray<any>; readonly id?: string | undefined; readonly meta?: { readonly title: string; readonly description?: string | undefined; readonly schema?: unknown; readonly author?: string | undefined; readonly priority?: number | undefined; readonly analytics?: { readonly [x: string]: unknown; } | { readonly providers: ReadonlyArray<{ readonly name: "google" | "plausible" | "matomo" | "fathom" | "posthog" | "mixpanel"; readonly enabled?: boolean | undefined; readonly dnsPrefetch?: string | undefined; readonly scripts?: ReadonlyArray<{ readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; }> | undefined; readonly initScript?: string | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }>; } | undefined; readonly lang?: string | undefined; readonly keywords?: string | undefined; readonly canonical?: string | undefined; readonly robots?: string | undefined; readonly noindex?: boolean | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; readonly favicon?: string | undefined; readonly favicons?: ReadonlyArray<{ readonly rel: "icon" | "apple-touch-icon" | "manifest" | "mask-icon"; readonly href: string; readonly type?: string | undefined; readonly color?: string | undefined; readonly sizes?: string | undefined; }> | { readonly icon?: string | undefined; readonly sizes?: ReadonlyArray<{ readonly size: string; readonly href: string; }> | undefined; readonly appleTouchIcon?: string | undefined; } | undefined; readonly stylesheet?: string | undefined; readonly googleFonts?: string | undefined; readonly socialImage?: string | undefined; readonly openGraph?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly type?: "website" | "article" | "book" | "profile" | "video" | "music" | undefined; readonly url?: string | undefined; readonly locale?: string | undefined; readonly video?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly siteName?: string | undefined; readonly determiner?: "" | "a" | "an" | "the" | "auto" | undefined; readonly audio?: string | undefined; } | undefined; readonly twitter?: { readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly preload?: ReadonlyArray<{ readonly as: "style" | "video" | "image" | "audio" | "script" | "font" | "document" | "fetch"; readonly href: string; readonly type?: string | undefined; readonly crossorigin?: boolean | "anonymous" | "use-credentials" | undefined; readonly media?: string | undefined; }> | undefined; readonly dnsPrefetch?: ReadonlyArray<string> | undefined; readonly customElements?: ReadonlyArray<{ readonly type: "style" | "link" | "meta" | "script" | "base"; readonly attrs?: { readonly [x: string]: string; } | undefined; readonly content?: string | undefined; }> | undefined; readonly viewport?: string | undefined; readonly twitterCard?: { readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly structuredData?: unknown; readonly "og:site_name"?: string | undefined; readonly i18n?: { readonly [x: string]: { readonly title?: string | undefined; readonly description?: string | undefined; }; } | undefined; } | undefined; readonly scripts?: { readonly features?: { readonly [x: string]: boolean | { readonly enabled?: boolean | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }; } | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; readonly externalScripts?: ReadonlyArray<{ readonly src: string; readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly external?: ReadonlyArray<{ readonly src: string; readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly inlineScripts?: ReadonlyArray<{ readonly code: string; readonly async?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; }> | undefined; } | undefined; readonly vars?: { readonly [x: string]: string | number | boolean; } | undefined; readonly access?: ReadonlyArray<string> | "all" | "authenticated" | { readonly require: ReadonlyArray<string> | "all" | "authenticated"; readonly redirectTo?: string | undefined; } | undefined; readonly toasts?: { readonly duration?: number | undefined; readonly position?: "top-right" | "top-left" | "top-center" | "bottom-right" | "bottom-left" | "bottom-center" | undefined; } | undefined; readonly collection?: { readonly table: string; readonly slugField: string; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; } | undefined; readonly sitemap?: false | { readonly priority?: number | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; } | undefined; readonly rss?: boolean | { readonly limit?: number | undefined; } | undefined; readonly layout?: { readonly header?: { readonly components: ReadonlyArray<{ readonly type: "notificationBell"; readonly position?: "left" | "right" | undefined; }>; } | undefined; readonly sidebar?: ReadonlyArray<{ readonly dataSource: { readonly table: string; readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; }; readonly template: { readonly label: string; readonly href: string; readonly archivedField?: string | undefined; }; readonly activeIndicator?: "$currentUser.activeAssignment" | undefined; }> | undefined; } | undefined; readonly dataSource?: { readonly table: string; readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly limit?: number | undefined; readonly fields?: ReadonlyArray<string> | undefined; readonly mode?: "list" | "search" | "single" | undefined; readonly pagination?: { readonly pageSize: number; readonly style?: "numbered" | "loadMore" | "infinite" | undefined; } | undefined; readonly param?: string | undefined; readonly searchEngine?: "client" | "fts" | "trigram" | "hybrid" | undefined; readonly searchFields?: ReadonlyArray<string> | undefined; readonly debounceMs?: number | undefined; readonly targetId?: string | undefined; readonly bindTo?: string | undefined; } | undefined; readonly viewTransition?: { readonly type: "none" | "fade" | "slide"; readonly duration?: number | undefined; readonly direction?: "left" | "right" | "up" | "down" | undefined; } | undefined; readonly markdown?: { readonly content?: string | undefined; readonly layout?: "full" | "prose" | "docs" | undefined; readonly file?: string | undefined; readonly toc?: { readonly position?: "sidebar" | "top" | undefined; readonly maxDepth?: number | undefined; } | undefined; } | undefined; readonly contentDir?: { readonly directory: string; readonly slugFrom: "filename" | "filepath"; readonly sort?: { readonly field: string; readonly order?: "asc" | "desc" | undefined; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly filter?: { readonly [x: string]: unknown; } | undefined; readonly include?: string | undefined; } | undefined; readonly source?: { readonly file: string; } | undefined; readonly presence?: boolean | undefined; readonly allowedTables?: ReadonlyArray<string> | undefined; }> | undefined; readonly scripts?: { readonly config?: { readonly [x: string]: unknown; } | undefined; readonly external?: ReadonlyArray<{ readonly src: string; readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly inline?: ReadonlyArray<{ readonly code: string; readonly async?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; }> | undefined; } | undefined; readonly forms?: ReadonlyArray<{ readonly title: string; readonly name: string; readonly id: number; readonly fields: ReadonlyArray<{ readonly column: string; readonly kind: "table-field"; readonly required?: boolean | undefined; readonly maxFileSize?: number | undefined; readonly maxFiles?: number | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly accept?: string | undefined; readonly dropZone?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; } | { readonly name: string; readonly kind: "standalone"; readonly inputType: "number" | "select" | "email" | "long-text" | "url" | "date" | "datetime" | "checkbox" | "multi-select" | "rating" | "short-text" | "phone" | "radio" | "attachment"; readonly required?: boolean | undefined; readonly options?: ReadonlyArray<{ readonly value: string; readonly label?: string | undefined; }> | undefined; readonly maxFileSize?: number | undefined; readonly maxFiles?: number | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly accept?: string | undefined; readonly dropZone?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; } | { readonly name: string; readonly formula: string; readonly kind: "calculation"; readonly required?: boolean | undefined; readonly format?: "number" | "currency" | "text" | "percent" | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; } | { readonly kind: "section"; readonly description?: string | undefined; readonly heading?: string | undefined; readonly visibleWhen?: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; } | undefined; } | { readonly name: string; readonly kind: "signature"; readonly required?: boolean | undefined; readonly placeholder?: string | undefined; readonly label?: string | undefined; readonly readOnly?: boolean | undefined; readonly helpText?: string | undefined; readonly hidden?: boolean | undefined; readonly defaultValue?: string | number | boolean | undefined; readonly visibleWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly requiredWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; readonly disabledWhen?: import("./domain/models/shared/visible-when").VisibleWhenCondition | undefined; }>; readonly submitTo: { readonly table?: string | undefined; readonly automation?: string | undefined; readonly mapping?: { readonly [x: string]: string; } | undefined; readonly storeSubmission?: boolean | undefined; }; readonly description?: string | undefined; readonly path?: string | undefined; readonly analytics?: { readonly enabled?: boolean | undefined; } | undefined; readonly access?: { readonly require: ReadonlyArray<string> | "all" | "authenticated"; readonly redirectTo?: string | undefined; } | undefined; readonly layout?: "single-page" | "multi-step" | "one-question" | undefined; readonly steps?: ReadonlyArray<{ readonly id: string; readonly fields: ReadonlyArray<string>; readonly title?: string | undefined; readonly description?: string | undefined; readonly visibleWhen?: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; } | undefined; readonly goToWhen?: ReadonlyArray<{ readonly when: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; }; readonly goTo: string; }> | undefined; }> | undefined; readonly fieldGroups?: ReadonlyArray<{ readonly fields: ReadonlyArray<string>; readonly label: string; readonly visibleWhen?: { readonly field: string; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte" | "empty" | "notEmpty" | "notIn"; readonly value?: string | number | boolean | ReadonlyArray<string | number | boolean> | undefined; } | undefined; }> | undefined; readonly display?: { readonly theme?: { readonly borderRadius?: string | undefined; readonly primaryColor?: string | undefined; readonly backgroundColor?: string | undefined; } | undefined; readonly columns?: number | undefined; readonly progressBar?: boolean | undefined; readonly submitLabel?: string | undefined; } | undefined; readonly availability?: { readonly opensAt?: string | undefined; readonly closesAt?: string | undefined; readonly maxSubmissions?: number | undefined; } | undefined; readonly antiSpam?: { readonly honeypot?: boolean | undefined; readonly rateLimit?: { readonly windowSeconds: number; readonly perIp?: number | undefined; readonly perForm?: number | undefined; } | undefined; readonly captcha?: string | undefined; } | undefined; readonly prefill?: { readonly [x: string]: string | number | boolean; } | undefined; readonly submitter?: { readonly saveAndResume?: boolean | undefined; readonly allowEditAfterSubmit?: boolean | undefined; readonly requireUniqueSubmission?: boolean | undefined; } | undefined; readonly onSuccess?: { readonly type: "successPage"; readonly message?: string | undefined; readonly title?: string | undefined; readonly buttonLabel?: string | undefined; readonly buttonHref?: string | undefined; readonly actions?: ReadonlyArray<{ readonly label: string; readonly action: "reset" | "navigate"; readonly url?: string | undefined; }> | undefined; readonly showSummary?: boolean | undefined; } | { readonly type: "redirect"; readonly url: string; readonly delaySeconds?: number | undefined; } | { readonly type: "reset"; readonly message?: string | undefined; readonly preserveFields?: ReadonlyArray<string> | undefined; } | { readonly message: string; readonly type: "toast"; readonly variant?: "success" | "info" | undefined; } | { readonly message: string; readonly type: "message"; } | undefined; readonly onError?: { readonly message: string; readonly type: "message" | "toast" | "errorPage"; readonly title?: string | undefined; readonly variant?: "error" | "warning" | undefined; } | undefined; readonly share?: { readonly embeddable?: boolean | undefined; readonly allowedOrigins?: ReadonlyArray<string> | undefined; readonly password?: string | undefined; } | undefined; }> | undefined; readonly actions?: ReadonlyArray<{ readonly name: string; readonly action: unknown; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | "delete" | "create" | "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined; readonly variables?: { readonly [x: string]: unknown; } | undefined; }> | undefined; readonly connections?: ReadonlyArray<{ readonly name: string; readonly type: "oauth2"; readonly props: { readonly clientId: string; readonly clientSecret: string; readonly provider?: string | undefined; readonly authorizationUrl?: string | undefined; readonly tokenUrl?: string | undefined; readonly scopes?: ReadonlyArray<string> | undefined; readonly redirectUri?: string | undefined; readonly grantType?: "authorizationCode" | "clientCredentials" | undefined; readonly pkce?: "none" | "S256" | "plain" | undefined; readonly audience?: string | undefined; readonly authenticationMethod?: "body" | "header" | undefined; readonly extraAuthParams?: { readonly [x: string]: string; } | undefined; readonly extraTokenParams?: { readonly [x: string]: string; } | undefined; readonly scope?: "user" | "app" | undefined; readonly _test?: { readonly seedExpired?: boolean | undefined; readonly seedExpiredFor?: ReadonlyArray<string> | undefined; } | undefined; }; readonly description?: string | undefined; readonly label?: string | undefined; } | { readonly name: string; readonly type: "apiKey"; readonly props: { readonly key: string; readonly prefix?: string | undefined; readonly header?: string | undefined; }; readonly description?: string | undefined; readonly label?: string | undefined; } | { readonly name: string; readonly type: "basic"; readonly props: { readonly password: string; readonly username: string; }; readonly description?: string | undefined; readonly label?: string | undefined; } | { readonly name: string; readonly type: "bearer"; readonly props: { readonly token: string; }; readonly description?: string | undefined; readonly label?: string | undefined; }> | undefined; readonly env?: ReadonlyArray<{ readonly key: string; readonly description?: string | undefined; readonly default?: string | undefined; readonly required?: boolean | undefined; }> | undefined; readonly automations?: ReadonlyArray<{ readonly name: string; readonly actions: ReadonlyArray<unknown>; readonly trigger: { readonly type: "webhook"; readonly method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | ReadonlyArray<"GET" | "POST" | "PUT" | "PATCH" | "DELETE">; readonly auth?: { readonly type: "hmac" | "apiKey" | "bearer" | "basic"; readonly key?: string | undefined; readonly prefix?: string | undefined; readonly secret?: string | undefined; readonly algorithm?: string | undefined; readonly header?: string | undefined; readonly token?: string | undefined; readonly password?: string | undefined; readonly username?: string | undefined; } | undefined; readonly secret?: string | undefined; readonly rateLimit?: { readonly windowSeconds?: number | undefined; readonly maxRequests?: number | undefined; readonly window?: number | undefined; } | undefined; readonly respondImmediately?: boolean | undefined; readonly response?: { readonly status?: number | undefined; readonly body?: string | { readonly [x: string]: unknown; } | undefined; readonly statusCode?: number | undefined; readonly headers?: { readonly [x: string]: string; } | undefined; } | undefined; readonly requestSchema?: { readonly [x: string]: unknown; } | undefined; readonly querySchema?: { readonly [x: string]: unknown; } | undefined; readonly deduplicationKey?: string | undefined; readonly deduplicationWindow?: number | undefined; } | { readonly type: "cron"; readonly expression: string; readonly timezone?: string | undefined; } | { readonly table: string; readonly type: "record"; readonly events: ReadonlyArray<"update" | "delete" | "create">; readonly watchFields?: ReadonlyArray<string> | undefined; readonly condition?: { readonly conditions: ReadonlyArray<{ readonly field: string; readonly operator: "equals" | "endsWith" | "startsWith" | "contains" | "notEquals" | "notContains" | "greaterThan" | "greaterThanOrEqual" | "lessThan" | "lessThanOrEqual" | "isEmpty" | "isNotEmpty" | "isNull" | "isNotNull" | "matches"; readonly value?: string | number | boolean | null | undefined; }>; readonly logic?: "and" | "or" | undefined; } | undefined; } | { readonly type: "auth"; readonly events: ReadonlyArray<"signUp" | "signIn" | "signOut" | "passwordReset" | "emailVerified">; } | { readonly type: "form"; readonly form: string; } | { readonly type: "manual"; readonly label?: string | undefined; readonly inputSchema?: { readonly [x: string]: unknown; } | undefined; readonly requiredRole?: string | undefined; } | { readonly type: "automation-call"; readonly inputSchema?: { readonly [x: string]: unknown; } | undefined; } | { readonly type: "automation-failure"; readonly automations?: ReadonlyArray<string> | undefined; } | { readonly table: string; readonly type: "comment"; readonly filter?: { readonly topLevelOnly?: boolean | undefined; readonly repliesOnly?: boolean | undefined; readonly mentionsOnly?: boolean | undefined; } | undefined; readonly when?: "any" | "approved" | "created" | undefined; readonly respectReadPermissions?: boolean | undefined; }; readonly description?: string | undefined; readonly tags?: ReadonlyArray<string> | undefined; readonly label?: string | undefined; readonly permissions?: { readonly trigger?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly enabled?: boolean | undefined; readonly retry?: { readonly maxAttempts: number; readonly delayMs?: number | undefined; readonly strategy?: "exponential" | "fixed" | undefined; } | undefined; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | "delete" | "create" | "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined; readonly timeout?: number | undefined; }> | undefined; readonly agents?: ReadonlyArray<{ readonly name: string; readonly systemPrompt: string; readonly role: string; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly permissions?: { readonly type: "agent"; readonly trigger?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly emailDomain?: string | undefined; } | undefined; readonly enabled?: boolean | undefined; readonly approval?: { readonly required?: ReadonlyArray<string> | undefined; readonly mode?: "all" | "none" | "selective" | undefined; readonly timeout?: number | undefined; readonly escalation?: { readonly after: number; readonly to: string; } | undefined; } | undefined; readonly instructions?: ReadonlyArray<string> | undefined; readonly tools?: { readonly tables: ReadonlyArray<string>; readonly actions: ReadonlyArray<"record.delete" | "email.send" | "record.read" | "record.create" | "record.update" | "state.get" | "state.set" | "state.increment" | "state.delete" | "state.list" | "http.request" | "ai.generate" | "ai.classify" | "ai.extract" | "code.runTypescript" | "auth.createUser" | "auth.assignRole" | "auth.banUser" | "auth.unbanUser" | "file.upload" | "file.download" | "file.delete" | "file.list" | "file.getMetadata">; } | undefined; readonly limits?: { readonly maxActionsPerMinute?: number | undefined; readonly maxTokensPerDay?: number | undefined; readonly maxConcurrentTasks?: number | undefined; } | undefined; readonly memory?: { readonly conversation?: { readonly enabled?: boolean | undefined; readonly windowSize?: number | undefined; readonly summarize?: boolean | undefined; } | undefined; readonly knowledge?: { readonly enabled?: boolean | undefined; readonly sources?: ReadonlyArray<string> | undefined; readonly retrievalLimit?: number | undefined; readonly similarityThreshold?: number | undefined; } | undefined; readonly facts?: { readonly enabled?: boolean | undefined; readonly maxFacts?: number | undefined; readonly namespace?: string | undefined; } | undefined; } | undefined; readonly knowledge?: { readonly tables?: ReadonlyArray<{ readonly table: string; readonly fields: ReadonlyArray<string>; readonly filter?: { readonly [x: string]: unknown; } | undefined; }> | undefined; readonly documents?: ReadonlyArray<{ readonly path: string; readonly label?: string | undefined; }> | undefined; } | undefined; readonly schedule?: { readonly cron: string; readonly taskPrompt: string; readonly timezone?: string | undefined; } | undefined; readonly mcp?: { readonly allowedTools?: ReadonlyArray<string> | undefined; } | undefined; }> | undefined; readonly buckets?: ReadonlyArray<{ readonly name: string; readonly maxFileSize?: number | undefined; readonly permissions?: { readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly upload?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly download?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly sign?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly signUpload?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly public?: boolean | undefined; readonly allowedMimeTypes?: ReadonlyArray<string> | undefined; }> | undefined; readonly notifications?: { readonly channels?: ReadonlyArray<{ readonly type: "inApp"; readonly enabled?: boolean | undefined; } | { readonly from: string; readonly type: "email"; readonly enabled?: boolean | undefined; readonly digest?: { readonly defaultFrequency: "hourly" | "daily" | "immediate"; readonly dailyTime?: string | undefined; } | undefined; readonly replyTo?: string | undefined; }> | undefined; readonly templates?: { readonly [x: string]: { readonly title: string; readonly body: string; readonly channels?: ReadonlyArray<"email" | "inApp"> | undefined; }; } | undefined; readonly recordSubscriptions?: ReadonlyArray<{ readonly table: string; readonly events: ReadonlyArray<"created" | "updated" | "deleted">; readonly fields?: ReadonlyArray<string> | undefined; readonly defaultSubscribers?: { readonly users?: ReadonlyArray<string> | undefined; readonly roles?: ReadonlyArray<string> | undefined; } | undefined; }> | undefined; } | undefined;}
|
|
5
5
|
|
|
6
|
-
export type PageConfig = { readonly name: string; readonly id?: string | undefined; readonly path: string; readonly components: ReadonlyArray<any>; readonly meta?: { readonly title: string; readonly description?: string | undefined; readonly schema?: unknown; readonly author?: string | undefined; readonly priority?: number | undefined; readonly analytics?: { readonly [x: string]: unknown; } | { readonly providers: ReadonlyArray<{ readonly name: "google" | "plausible" | "matomo" | "fathom" | "posthog" | "mixpanel"; readonly enabled?: boolean | undefined; readonly dnsPrefetch?: string | undefined; readonly scripts?: ReadonlyArray<{ readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; }> | undefined; readonly initScript?: string | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }>; } | undefined; readonly lang?: string | undefined; readonly keywords?: string | undefined; readonly canonical?: string | undefined; readonly robots?: string | undefined; readonly noindex?: boolean | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; readonly favicon?: string | undefined; readonly favicons?: ReadonlyArray<{ readonly type?: string | undefined; readonly color?: string | undefined; readonly rel: "icon" | "apple-touch-icon" | "manifest" | "mask-icon"; readonly sizes?: string | undefined; readonly href: string; }> | { readonly icon?: string | undefined; readonly sizes?: ReadonlyArray<{ readonly size: string; readonly href: string; }> | undefined; readonly appleTouchIcon?: string | undefined; } | undefined; readonly stylesheet?: string | undefined; readonly googleFonts?: string | undefined; readonly socialImage?: string | undefined; readonly openGraph?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly type?: "website" | "article" | "book" | "profile" | "video" | "music" | undefined; readonly url?: string | undefined; readonly locale?: string | undefined; readonly video?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly siteName?: string | undefined; readonly determiner?: "" | "a" | "an" | "the" | "auto" | undefined; readonly audio?: string | undefined; } | undefined; readonly twitter?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly preload?: ReadonlyArray<{ readonly as: "style" | "video" | "image" | "audio" | "script" | "font" | "document" | "fetch"; readonly type?: string | undefined; readonly href: string; readonly crossorigin?: boolean | "anonymous" | "use-credentials" | undefined; readonly media?: string | undefined; }> | undefined; readonly dnsPrefetch?: ReadonlyArray<string> | undefined; readonly customElements?: ReadonlyArray<{ readonly type: "style" | "link" | "meta" | "script" | "base"; readonly attrs?: { readonly [x: string]: string; } | undefined; readonly content?: string | undefined; }> | undefined; readonly viewport?: string | undefined; readonly twitterCard?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly structuredData?: unknown; readonly 'og:site_name'?: string | undefined; readonly i18n?: { readonly [x: string]: { readonly title?: string | undefined; readonly description?: string | undefined; }; } | undefined; } | undefined; readonly scripts?: { readonly features?: { readonly [x: string]: boolean | { readonly enabled?: boolean | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }; } | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; readonly externalScripts?: ReadonlyArray<{ readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly external?: ReadonlyArray<{ readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly inlineScripts?: ReadonlyArray<{ readonly code: string; readonly async?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; }> | undefined; } | undefined; readonly vars?: { readonly [x: string]: string | number | boolean; } | undefined; readonly access?: ReadonlyArray<string> | "all" | "authenticated" | { readonly require: ReadonlyArray<string> | "all" | "authenticated"; readonly redirectTo?: string | undefined; } | undefined; readonly toasts?: { readonly duration?: number | undefined; readonly position?: "top-right" | "top-left" | "top-center" | "bottom-right" | "bottom-left" | "bottom-center" | undefined; } | undefined; readonly collection?: { readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly table: string; readonly slugField: string; } | undefined; readonly sitemap?: false | { readonly priority?: number | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; } | undefined; readonly rss?: boolean | { readonly limit?: number | undefined; } | undefined; readonly layout?: { readonly header?: { readonly components: ReadonlyArray<{ readonly type: "notificationBell"; readonly position?: "left" | "right" | undefined; }>; } | undefined; readonly sidebar?: ReadonlyArray<{ readonly dataSource: { readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly table: string; }; readonly template: { readonly label: string; readonly href: string; readonly archivedField?: string | undefined; }; readonly activeIndicator?: "$currentUser.activeAssignment" | undefined; }> | undefined; } | undefined; readonly dataSource?: { readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly table: string; readonly limit?: number | undefined; readonly fields?: ReadonlyArray<string> | undefined; readonly mode?: /** @deprecated COMING SOON — not yet implemented. */ "list" | "search" | "single" | undefined; readonly pagination?: { readonly style?: "numbered" | "loadMore" | "infinite" | undefined; readonly pageSize: number; } | undefined; readonly param?: string | undefined; readonly searchEngine?: "client" | "fts" | "trigram" | "hybrid" | undefined; readonly searchFields?: ReadonlyArray<string> | undefined; readonly debounceMs?: number | undefined; readonly targetId?: string | undefined; readonly bindTo?: string | undefined; } | undefined; readonly viewTransition?: { readonly type: "none" | "fade" | "slide"; readonly duration?: number | undefined; readonly direction?: "left" | "right" | "up" | "down" | undefined; } | undefined; readonly markdown?: { readonly content?: string | undefined; readonly layout?: "full" | "prose" | "docs" | undefined; readonly file?: string | undefined; readonly toc?: { readonly position?: "sidebar" | "top" | undefined; readonly maxDepth?: number | undefined; } | undefined; } | undefined; readonly contentDir?: { readonly sort?: { readonly field: string; readonly order?: "asc" | "desc" | undefined; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly filter?: { readonly [x: string]: unknown; } | undefined; readonly directory: string; readonly slugFrom: "filename" | "filepath"; readonly include?: string | undefined; } | undefined; readonly source?: { readonly file: string; } | undefined; readonly presence?: boolean | undefined; readonly allowedTables?: ReadonlyArray<string> | undefined;}
|
|
6
|
+
export type PageConfig = { readonly name: string; readonly id?: string | undefined; readonly path: string; readonly components: ReadonlyArray<any>; readonly meta?: { readonly title: string; readonly description?: string | undefined; readonly schema?: unknown; readonly author?: string | undefined; readonly priority?: number | undefined; readonly analytics?: { readonly [x: string]: unknown; } | { readonly providers: ReadonlyArray<{ readonly name: "google" | "plausible" | "matomo" | "fathom" | "posthog" | "mixpanel"; readonly enabled?: boolean | undefined; readonly dnsPrefetch?: string | undefined; readonly scripts?: ReadonlyArray<{ readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; }> | undefined; readonly initScript?: string | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }>; } | undefined; readonly lang?: string | undefined; readonly keywords?: string | undefined; readonly canonical?: string | undefined; readonly robots?: string | undefined; readonly noindex?: boolean | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; readonly favicon?: string | undefined; readonly favicons?: ReadonlyArray<{ readonly type?: string | undefined; readonly color?: string | undefined; readonly rel: "icon" | "apple-touch-icon" | "manifest" | "mask-icon"; readonly sizes?: string | undefined; readonly href: string; }> | { readonly icon?: string | undefined; readonly sizes?: ReadonlyArray<{ readonly size: string; readonly href: string; }> | undefined; readonly appleTouchIcon?: string | undefined; } | undefined; readonly stylesheet?: string | undefined; readonly googleFonts?: string | undefined; readonly socialImage?: string | undefined; readonly openGraph?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly type?: "website" | "article" | "book" | "profile" | "video" | "music" | undefined; readonly url?: string | undefined; readonly locale?: string | undefined; readonly video?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly siteName?: string | undefined; readonly determiner?: "" | "a" | "an" | "the" | "auto" | undefined; readonly audio?: string | undefined; } | undefined; readonly twitter?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly preload?: ReadonlyArray<{ readonly as: "style" | "video" | "image" | "audio" | "script" | "font" | "document" | "fetch"; readonly type?: string | undefined; readonly href: string; readonly crossorigin?: boolean | "anonymous" | "use-credentials" | undefined; readonly media?: string | undefined; }> | undefined; readonly dnsPrefetch?: ReadonlyArray<string> | undefined; readonly customElements?: ReadonlyArray<{ readonly type: "style" | "link" | "meta" | "script" | "base"; readonly attrs?: { readonly [x: string]: string; } | undefined; readonly content?: string | undefined; }> | undefined; readonly viewport?: string | undefined; readonly twitterCard?: { readonly title?: string | undefined; readonly description?: string | undefined; readonly image?: string | undefined; readonly imageAlt?: string | undefined; readonly player?: string | undefined; readonly card: "summary" | "summary_large_image" | "app" | "player"; readonly site?: string | undefined; readonly creator?: string | undefined; readonly playerWidth?: number | undefined; readonly playerHeight?: number | undefined; readonly appName?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; readonly appId?: { readonly iPhone?: string | undefined; readonly iPad?: string | undefined; readonly googlePlay?: string | undefined; } | undefined; } | undefined; readonly structuredData?: unknown; readonly 'og:site_name'?: string | undefined; readonly i18n?: { readonly [x: string]: { readonly title?: string | undefined; readonly description?: string | undefined; }; } | undefined; } | undefined; readonly scripts?: { readonly features?: { readonly [x: string]: boolean | { readonly enabled?: boolean | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; }; } | undefined; readonly config?: { readonly [x: string]: unknown; } | undefined; readonly externalScripts?: ReadonlyArray<{ readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly external?: ReadonlyArray<{ readonly crossorigin?: "anonymous" | "use-credentials" | undefined; readonly src: string; readonly async?: boolean | undefined; readonly defer?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; readonly module?: boolean | undefined; readonly integrity?: string | undefined; }> | undefined; readonly inlineScripts?: ReadonlyArray<{ readonly code: string; readonly async?: boolean | undefined; readonly position?: "head" | "body-start" | "body-end" | undefined; }> | undefined; } | undefined; readonly vars?: { readonly [x: string]: string | number | boolean; } | undefined; readonly access?: ReadonlyArray<string> | "all" | "authenticated" | { readonly require: ReadonlyArray<string> | "all" | "authenticated"; readonly redirectTo?: string | undefined; } | undefined; readonly toasts?: { readonly duration?: number | undefined; readonly position?: "top-right" | "top-left" | "top-center" | "bottom-right" | "bottom-left" | "bottom-center" | undefined; } | undefined; readonly collection?: { readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly table: string; readonly slugField: string; } | undefined; readonly sitemap?: false | { readonly priority?: number | undefined; readonly changefreq?: "always" | "hourly" | "daily" | "weekly" | "monthly" | "yearly" | "never" | undefined; } | undefined; readonly rss?: boolean | { readonly limit?: number | undefined; } | undefined; readonly layout?: { readonly header?: { readonly components: ReadonlyArray<{ readonly type: "notificationBell"; readonly position?: "left" | "right" | undefined; }>; } | undefined; readonly sidebar?: ReadonlyArray<{ readonly dataSource: { readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly table: string; }; readonly template: { readonly label: string; readonly href: string; readonly archivedField?: string | undefined; }; readonly activeIndicator?: "$currentUser.activeAssignment" | undefined; }> | undefined; } | undefined; readonly dataSource?: { readonly sort?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly filter?: ReadonlyArray<{ readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq" | "contains" | "gt" | "lt" | "gte" | "lte"; }> | undefined; readonly table: string; readonly limit?: number | undefined; readonly fields?: ReadonlyArray<string> | undefined; readonly mode?: "list" | "search" | "single" | undefined; readonly pagination?: { readonly style?: "numbered" | "loadMore" | "infinite" | undefined; readonly pageSize: number; } | undefined; readonly param?: string | undefined; readonly searchEngine?: "client" | "fts" | "trigram" | "hybrid" | undefined; readonly searchFields?: ReadonlyArray<string> | undefined; readonly debounceMs?: number | undefined; readonly targetId?: string | undefined; readonly bindTo?: string | undefined; } | undefined; readonly viewTransition?: { readonly type: "none" | "fade" | "slide"; readonly duration?: number | undefined; readonly direction?: "left" | "right" | "up" | "down" | undefined; } | undefined; readonly markdown?: { readonly content?: string | undefined; readonly layout?: "full" | "prose" | "docs" | undefined; readonly file?: string | undefined; readonly toc?: { readonly position?: "sidebar" | "top" | undefined; readonly maxDepth?: number | undefined; } | undefined; } | undefined; readonly contentDir?: { readonly sort?: { readonly field: string; readonly order?: "asc" | "desc" | undefined; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly filter?: { readonly [x: string]: unknown; } | undefined; readonly directory: string; readonly slugFrom: "filename" | "filepath"; readonly include?: string | undefined; } | undefined; readonly source?: { readonly file: string; } | undefined; readonly presence?: boolean | undefined; readonly allowedTables?: ReadonlyArray<string> | undefined;}
|
|
7
7
|
|
|
8
|
-
export type TableConfig = { readonly name: string; readonly id?: string | number | undefined; readonly unique?: ReadonlyArray<{ readonly fields: ReadonlyArray<string>; }> | undefined; readonly fields: ReadonlyArray<({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "single-line-text"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "long-text"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "phone-number"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "email"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "url"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "integer"; readonly min?: number | undefined; readonly max?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "decimal"; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "currency"; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; readonly currency: string; readonly symbolPosition?: "before" | "after" | undefined; readonly negativeFormat?: "minus" | "parentheses" | undefined; readonly thousandsSeparator?: "comma" | "period" | "space" | "none" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "percentage"; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "date"; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly includeTime?: boolean | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "datetime"; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "time"; readonly timeFormat?: "12-hour" | "24-hour" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: boolean | undefined; readonly type: "checkbox"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "single-select"; readonly options: ReadonlyArray<string>; readonly conditions?: ReadonlyArray<{ readonly when: string; readonly then: { readonly [x: string]: unknown; }; }> | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: ReadonlyArray<string> | undefined; readonly type: "multi-select"; readonly options: ReadonlyArray<string>; readonly maxSelections?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "relationship"; readonly relatedTable: string; readonly relationType: string; readonly foreignKey?: string | undefined; readonly displayField?: string | undefined; readonly onDelete?: string | undefined; readonly onUpdate?: string | undefined; readonly reciprocalField?: string | undefined; readonly allowMultiple?: boolean | undefined; readonly limitToView?: string | undefined; readonly relatedField?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-attachment"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly generateThumbnail?: boolean | undefined; readonly storeMetadata?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "multiple-attachments"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly storeMetadata?: boolean | undefined; readonly maxFiles?: number | undefined; readonly generateThumbnails?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "formula"; readonly format?: string | undefined; readonly formula: string; readonly resultType?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rollup"; readonly format?: string | undefined; readonly relatedField: string; readonly relationshipField: string; readonly aggregation: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "lookup"; readonly relatedField: string; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "count"; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "user"; readonly allowMultiple?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "rating"; readonly max?: number | undefined; readonly style?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "duration"; readonly format?: string | undefined; readonly displayFormat?: "decimal" | "h:mm" | "h:mm:ss" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rich-text"; readonly maxLength?: number | undefined; readonly fullTextSearch?: boolean | undefined; readonly toolbar?: ReadonlyArray<string> | undefined; readonly placeholder?: string | undefined; readonly collaborative?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "status"; readonly options: ReadonlyArray<{ readonly value: string; readonly color?: string | undefined; }>; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "button"; readonly url?: string | undefined; readonly label: string; readonly action: string; readonly automation?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "autonumber"; readonly prefix?: string | undefined; readonly startFrom?: number | undefined; readonly digits?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "barcode"; readonly format?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "color"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: /** @deprecated COMING SOON — not yet implemented. */ "progress"; readonly color?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "geolocation"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly schema?: {} | undefined; readonly type: "json"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "array"; readonly itemType?: string | undefined; readonly maxItems?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "code"; readonly language: string; readonly lineNumbers?: boolean | undefined; readonly readOnly?: boolean | undefined; readonly minLines?: number | undefined; readonly maxLines?: number | undefined; readonly tabSize?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-categorize"; readonly sourceFields: ReadonlyArray<string>; readonly categories: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly schema: { readonly [x: string]: unknown; }; readonly type: "ai-extract"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-generate"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-sentiment"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-summary"; readonly maxLength?: number | undefined; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-tag"; readonly tags: ReadonlyArray<string>; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; readonly maxTags?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-translate"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; readonly targetLanguage: string; }) | { readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; readonly type: string; }>; readonly primaryKey?: { readonly field?: string | undefined; readonly type: string; readonly fields?: ReadonlyArray<string> | undefined; } | undefined; readonly indexes?: ReadonlyArray<{ readonly name: string; readonly where?: string | undefined; readonly unique?: boolean | undefined; readonly fields: ReadonlyArray<string>; }> | undefined; readonly views?: ReadonlyArray<{ readonly name: string; readonly id: string | number; readonly fields?: ReadonlyArray<string> | undefined; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; readonly query?: string | undefined; readonly materialized?: boolean | undefined; readonly refreshOnMigration?: boolean | undefined; readonly isDefault?: boolean | undefined; readonly sorts?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly groupBy?: { readonly field: string; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly permissions?: { readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | undefined; } | { readonly public: true; } | undefined; }> | undefined; readonly permissions?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly inherit?: string | undefined; readonly fields?: ReadonlyArray<{ readonly field: string; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | "all" | "authenticated" | undefined; }> | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly override?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly admin?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; } | undefined; readonly foreignKeys?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<string>; readonly onDelete?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; readonly onUpdate?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; readonly referencedTable: string; readonly referencedFields: ReadonlyArray<string>; }> | undefined; readonly constraints?: ReadonlyArray<{ readonly name: string; readonly check: string; }> | undefined; readonly rowLevelPermissions?: { readonly delete?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly create?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly read?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly write?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; } | undefined; readonly allowDestructive?: boolean | undefined; readonly allowForceDelete?: boolean | undefined; readonly webhooks?: ReadonlyArray<{ readonly name: string; readonly url: string; readonly events: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create">; readonly enabled?: boolean | undefined; readonly auth?: { readonly type: /** @deprecated COMING SOON — not yet implemented. */ "hmac"; readonly secret: string; readonly algorithm?: "sha256" | "sha1" | undefined; readonly header?: string | undefined; } | { readonly key: string; readonly type: "apiKey"; readonly header?: string | undefined; } | { readonly type: "bearer"; readonly token: string; } | undefined; readonly retry?: { readonly maxAttempts: number; readonly backoff?: "exponential" | "fixed" | undefined; readonly initialDelay?: number | undefined; readonly maxDelay?: number | undefined; } | undefined; readonly payload?: { readonly includeFields?: ReadonlyArray<string> | undefined; readonly excludeFields?: ReadonlyArray<string> | undefined; readonly includePreviousValues?: boolean | undefined; readonly includeMetadata?: boolean | undefined; } | undefined; }> | undefined; readonly comments?: { readonly guestComments?: boolean | undefined; readonly guestEmailRequired?: boolean | undefined; readonly threading?: boolean | undefined; readonly moderation?: boolean | undefined; readonly autoApprove?: { readonly authenticated?: boolean | undefined; readonly previouslyApproved?: boolean | undefined; } | undefined; } | undefined; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | /** @deprecated COMING SOON — not yet implemented. */ "delete" | "create" | /** @deprecated COMING SOON — not yet implemented. */ "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined;}
|
|
8
|
+
export type TableConfig = { readonly name: string; readonly id?: string | number | undefined; readonly unique?: ReadonlyArray<{ readonly fields: ReadonlyArray<string>; }> | undefined; readonly fields: ReadonlyArray<({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "single-line-text"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "long-text"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "phone-number"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "email"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "url"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "integer"; readonly min?: number | undefined; readonly max?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "decimal"; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "currency"; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; readonly currency: string; readonly symbolPosition?: "before" | "after" | undefined; readonly negativeFormat?: "minus" | "parentheses" | undefined; readonly thousandsSeparator?: "comma" | "period" | "space" | "none" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "percentage"; readonly min?: number | undefined; readonly max?: number | undefined; readonly precision?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "date"; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly includeTime?: boolean | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "datetime"; readonly format?: string | undefined; readonly dateFormat?: "US" | "European" | "ISO" | undefined; readonly timeFormat?: "12-hour" | "24-hour" | undefined; readonly timezone?: string | undefined; readonly timeZone?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "time"; readonly timeFormat?: "12-hour" | "24-hour" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: boolean | undefined; readonly type: "checkbox"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "single-select"; readonly options: ReadonlyArray<string>; readonly conditions?: ReadonlyArray<{ readonly when: string; readonly then: { readonly [x: string]: unknown; }; }> | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: ReadonlyArray<string> | undefined; readonly type: "multi-select"; readonly options: ReadonlyArray<string>; readonly maxSelections?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "relationship"; readonly relatedTable: string; readonly relationType: string; readonly foreignKey?: string | undefined; readonly displayField?: string | undefined; readonly onDelete?: string | undefined; readonly onUpdate?: string | undefined; readonly reciprocalField?: string | undefined; readonly allowMultiple?: boolean | undefined; readonly limitToView?: string | undefined; readonly relatedField?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "single-attachment"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly generateThumbnail?: boolean | undefined; readonly storeMetadata?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "multiple-attachments"; readonly bucket?: string | undefined; readonly allowedFileTypes?: ReadonlyArray<string> | undefined; readonly maxFileSize?: number | undefined; readonly storeMetadata?: boolean | undefined; readonly maxFiles?: number | undefined; readonly generateThumbnails?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "formula"; readonly format?: string | undefined; readonly formula: string; readonly resultType?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rollup"; readonly format?: string | undefined; readonly relatedField: string; readonly relationshipField: string; readonly aggregation: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "lookup"; readonly relatedField: string; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "count"; readonly relationshipField: string; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "user"; readonly allowMultiple?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "created-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "updated-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-at"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "deleted-by"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "rating"; readonly max?: number | undefined; readonly style?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "duration"; readonly format?: string | undefined; readonly displayFormat?: "decimal" | "h:mm" | "h:mm:ss" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "rich-text"; readonly maxLength?: number | undefined; readonly fullTextSearch?: boolean | undefined; readonly toolbar?: ReadonlyArray<string> | undefined; readonly placeholder?: string | undefined; readonly collaborative?: boolean | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "status"; readonly options: ReadonlyArray<{ readonly value: string; readonly color?: string | undefined; }>; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "button"; readonly url?: string | undefined; readonly label: string; readonly action: string; readonly automation?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "autonumber"; readonly prefix?: string | undefined; readonly startFrom?: number | undefined; readonly digits?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "barcode"; readonly format?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: string | undefined; readonly type: "color"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly default?: number | undefined; readonly type: "progress"; readonly color?: string | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "geolocation"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly schema?: {} | undefined; readonly type: "json"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "array"; readonly itemType?: string | undefined; readonly maxItems?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "code"; readonly language: string; readonly lineNumbers?: boolean | undefined; readonly readOnly?: boolean | undefined; readonly minLines?: number | undefined; readonly maxLines?: number | undefined; readonly tabSize?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-categorize"; readonly sourceFields: ReadonlyArray<string>; readonly categories: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly schema: { readonly [x: string]: unknown; }; readonly type: "ai-extract"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-generate"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-sentiment"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-summary"; readonly maxLength?: number | undefined; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn?: "update" | "create" | "both" | "manual" | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-tag"; readonly tags: ReadonlyArray<string>; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; readonly maxTags?: number | undefined; }) | ({ readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; } & { readonly type: "ai-translate"; readonly sourceFields: ReadonlyArray<string>; readonly prompt?: string | undefined; readonly systemPrompt?: string | undefined; readonly model?: string | undefined; readonly temperature?: number | undefined; readonly maxTokens?: number | undefined; readonly computeOn: "update" | "create" | "both"; readonly targetLanguage: string; }) | { readonly name: string; readonly id?: number | undefined; readonly unique?: boolean | undefined; readonly required?: boolean | undefined; readonly indexed?: boolean | undefined; readonly searchWeight?: "A" | "B" | "C" | "D" | undefined; readonly storage?: { readonly compression?: boolean | undefined; } | undefined; readonly type: string; }>; readonly primaryKey?: { readonly field?: string | undefined; readonly type: string; readonly fields?: ReadonlyArray<string> | undefined; } | undefined; readonly indexes?: ReadonlyArray<{ readonly name: string; readonly where?: string | undefined; readonly unique?: boolean | undefined; readonly fields: ReadonlyArray<string>; }> | undefined; readonly views?: ReadonlyArray<{ readonly name: string; readonly id: string | number; readonly fields?: ReadonlyArray<string> | undefined; readonly filters?: import("./domain/models/app/tables/views").ViewFilterNode | undefined; readonly query?: string | undefined; readonly materialized?: boolean | undefined; readonly refreshOnMigration?: boolean | undefined; readonly isDefault?: boolean | undefined; readonly sorts?: ReadonlyArray<{ readonly field: string; readonly direction: "asc" | "desc"; }> | undefined; readonly groupBy?: { readonly field: string; readonly direction?: "asc" | "desc" | undefined; } | undefined; readonly permissions?: { readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | undefined; } | { readonly public: true; } | undefined; }> | undefined; readonly permissions?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly inherit?: string | undefined; readonly fields?: ReadonlyArray<{ readonly field: string; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly write?: ReadonlyArray<string> | "all" | "authenticated" | undefined; }> | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly override?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly admin?: { readonly update?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly delete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly create?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly read?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; readonly comment?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly permanentDelete?: ReadonlyArray<string> | "all" | "authenticated" | undefined; readonly restore?: ReadonlyArray<string> | "all" | "authenticated" | undefined; } | undefined; } | undefined; readonly foreignKeys?: ReadonlyArray<{ readonly name: string; readonly fields: ReadonlyArray<string>; readonly onDelete?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; readonly onUpdate?: "cascade" | "set-null" | "restrict" | "no-action" | undefined; readonly referencedTable: string; readonly referencedFields: ReadonlyArray<string>; }> | undefined; readonly constraints?: ReadonlyArray<{ readonly name: string; readonly check: string; }> | undefined; readonly rowLevelPermissions?: { readonly delete?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly create?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly read?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; readonly write?: { readonly when: { readonly field: string; readonly value: string | number | boolean | ReadonlyArray<string> | ReadonlyArray<number> | { readonly kind: "currentUser"; readonly path: { readonly name: "id" | "email" | "role" | "isUnrestricted"; readonly kind: "scalar"; } | { readonly kind: "assignment"; readonly tableSlug: string; } | { readonly kind: "activeAssignment"; }; }; readonly operator: "in" | "eq" | "neq"; }; } | undefined; } | undefined; readonly allowDestructive?: boolean | undefined; readonly allowForceDelete?: boolean | undefined; readonly webhooks?: ReadonlyArray<{ readonly name: string; readonly url: string; readonly events: ReadonlyArray<"update" | "delete" | "create">; readonly enabled?: boolean | undefined; readonly auth?: { readonly type: "hmac"; readonly secret: string; readonly algorithm?: "sha256" | "sha1" | undefined; readonly header?: string | undefined; } | { readonly key: string; readonly type: "apiKey"; readonly header?: string | undefined; } | { readonly type: "bearer"; readonly token: string; } | undefined; readonly retry?: { readonly maxAttempts: number; readonly backoff?: "exponential" | "fixed" | undefined; readonly initialDelay?: number | undefined; readonly maxDelay?: number | undefined; } | undefined; readonly payload?: { readonly includeFields?: ReadonlyArray<string> | undefined; readonly excludeFields?: ReadonlyArray<string> | undefined; readonly includePreviousValues?: boolean | undefined; readonly includeMetadata?: boolean | undefined; } | undefined; }> | undefined; readonly comments?: { readonly guestComments?: boolean | undefined; readonly guestEmailRequired?: boolean | undefined; readonly threading?: boolean | undefined; readonly moderation?: boolean | undefined; readonly autoApprove?: { readonly authenticated?: boolean | undefined; readonly previouslyApproved?: boolean | undefined; } | undefined; } | undefined; readonly aiAccess?: boolean | { readonly annotations?: { readonly readOnly?: boolean | undefined; readonly destructive?: boolean | undefined; readonly idempotent?: boolean | undefined; readonly openWorld?: boolean | undefined; } | undefined; readonly description?: string | undefined; readonly operations?: ReadonlyArray<"update" | "delete" | "create" | "list" | "read"> | undefined; readonly fieldExposure?: "all" | "permissioned" | "whitelist" | undefined; readonly whitelistFields?: ReadonlyArray<string> | undefined; readonly requireConfirmation?: boolean | undefined; } | undefined;}
|
|
9
9
|
|
|
10
10
|
export type ComponentConfig = any
|
|
11
11
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sovrium/types",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "TypeScript type definitions for Sovrium app configuration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -23,6 +23,9 @@
|
|
|
23
23
|
"schema"
|
|
24
24
|
],
|
|
25
25
|
"homepage": "https://sovrium.com",
|
|
26
|
+
"bugs": {
|
|
27
|
+
"url": "https://github.com/sovrium/sovrium/issues"
|
|
28
|
+
},
|
|
26
29
|
"repository": {
|
|
27
30
|
"type": "git",
|
|
28
31
|
"url": "git+https://github.com/sovrium/sovrium.git",
|