import { z } from "zod"; /** * Domains * * Unified domain management for all purposes: email, customer portal, and booking engine. * Supports multiple providers for custom hostname/SSL management. */ /** * Domain Providers * * Infrastructure providers that can manage custom hostnames and SSL certificates. */ export declare const domainProviders: import("drizzle-orm/pg-core").PgEnum<["cloudflare"]>; export declare const domainProvidersSchema: z.ZodEnum<{ cloudflare: "cloudflare"; }>; export type DomainProvider = z.infer; export declare const domainStatuses: import("drizzle-orm/pg-core").PgEnum<["pending", "verified", "active", "disabled"]>; export declare const domainStatusesSchema: z.ZodEnum<{ pending: "pending"; active: "active"; verified: "verified"; disabled: "disabled"; }>; export type DomainStatus = z.infer; export declare const emailProviders: import("drizzle-orm/pg-core").PgEnum<["resend", "ses"]>; export declare const emailProvidersSchema: z.ZodEnum<{ resend: "resend"; ses: "ses"; }>; export type EmailProvider = z.infer; export declare const resendRegions: import("drizzle-orm/pg-core").PgEnum<["us-east-1", "eu-west-1", "sa-east-1", "ap-northeast-1"]>; export declare const resendRegionsSchema: z.ZodEnum<{ "us-east-1": "us-east-1"; "eu-west-1": "eu-west-1"; "sa-east-1": "sa-east-1"; "ap-northeast-1": "ap-northeast-1"; }>; export type ResendRegion = z.infer; export declare const tlsModes: import("drizzle-orm/pg-core").PgEnum<["opportunistic", "enforced"]>; export declare const tlsModesSchema: z.ZodEnum<{ opportunistic: "opportunistic"; enforced: "enforced"; }>; export type TlsMode = z.infer; export type DomainEmailSettings = { provider: EmailProvider | null; region: ResendRegion | null; providerDomainId: string | null; returnPathDomain: string | null; trackingDomain: string | null; dmarcPolicy: string | null; clickTracking: boolean; openTracking: boolean; tlsMode: TlsMode | null; configEncrypted: string | null; notes: string | null; }; export declare const domainsTable: Omit; domain: import("drizzle-orm/pg-core").PgColumn<{ name: "domain"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; status: import("drizzle-orm/pg-core").PgColumn<{ name: "status"; tableName: "domains"; dataType: "string"; columnType: "PgEnumColumn"; data: "pending" | "active" | "verified" | "disabled"; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["pending", "verified", "active", "disabled"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; provider: import("drizzle-orm/pg-core").PgColumn<{ name: "provider"; tableName: "domains"; dataType: "string"; columnType: "PgEnumColumn"; data: "cloudflare"; driverParam: string; notNull: false; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["cloudflare"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; providerHostnameId: import("drizzle-orm/pg-core").PgColumn<{ name: "provider_hostname_id"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; providerZoneId: import("drizzle-orm/pg-core").PgColumn<{ name: "provider_zone_id"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; certificateStatus: import("drizzle-orm/pg-core").PgColumn<{ name: "certificate_status"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; hostnameStatus: import("drizzle-orm/pg-core").PgColumn<{ name: "hostname_status"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; verificationRecords: import("drizzle-orm/pg-core").PgColumn<{ name: "verification_records"; tableName: "domains"; dataType: "json"; columnType: "PgJsonb"; data: { type: string; name: string; value: string; }[]; driverParam: unknown; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: { type: string; name: string; value: string; }[]; }>; customMetadata: import("drizzle-orm/pg-core").PgColumn<{ name: "custom_metadata"; tableName: "domains"; dataType: "json"; columnType: "PgJsonb"; data: Record; driverParam: unknown; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: Record; }>; emailProvider: import("drizzle-orm/pg-core").PgColumn<{ name: "email_provider"; tableName: "domains"; dataType: "string"; columnType: "PgEnumColumn"; data: "resend" | "ses"; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["resend", "ses"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailRegion: import("drizzle-orm/pg-core").PgColumn<{ name: "email_region"; tableName: "domains"; dataType: "string"; columnType: "PgEnumColumn"; data: "us-east-1" | "eu-west-1" | "sa-east-1" | "ap-northeast-1"; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["us-east-1", "eu-west-1", "sa-east-1", "ap-northeast-1"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailProviderDomainId: import("drizzle-orm/pg-core").PgColumn<{ name: "email_provider_domain_id"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailReturnPathDomain: import("drizzle-orm/pg-core").PgColumn<{ name: "email_return_path_domain"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailTrackingDomain: import("drizzle-orm/pg-core").PgColumn<{ name: "email_tracking_domain"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailDmarcPolicy: import("drizzle-orm/pg-core").PgColumn<{ name: "email_dmarc_policy"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailClickTracking: import("drizzle-orm/pg-core").PgColumn<{ name: "email_click_tracking"; tableName: "domains"; dataType: "boolean"; columnType: "PgBoolean"; data: boolean; driverParam: boolean; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailOpenTracking: import("drizzle-orm/pg-core").PgColumn<{ name: "email_open_tracking"; tableName: "domains"; dataType: "boolean"; columnType: "PgBoolean"; data: boolean; driverParam: boolean; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailTlsMode: import("drizzle-orm/pg-core").PgColumn<{ name: "email_tls_mode"; tableName: "domains"; dataType: "string"; columnType: "PgEnumColumn"; data: "opportunistic" | "enforced"; driverParam: string; notNull: false; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["opportunistic", "enforced"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailConfigEncrypted: import("drizzle-orm/pg-core").PgColumn<{ name: "email_config_encrypted"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; emailNotes: import("drizzle-orm/pg-core").PgColumn<{ name: "email_notes"; tableName: "domains"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "domains"; dataType: "date"; columnType: "PgTimestamp"; data: Date; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; updatedAt: import("drizzle-orm/pg-core").PgColumn<{ name: "updated_at"; tableName: "domains"; dataType: "date"; columnType: "PgTimestamp"; data: Date; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; }; dialect: "pg"; }>, "enableRLS">; export type InsertDomains = typeof domainsTable.$inferInsert; export type SelectDomains = typeof domainsTable.$inferSelect; export declare const domainInsertSchema: z.ZodObject<{ domain: z.ZodString; status: z.ZodDefault>; provider: z.ZodDefault>; providerHostnameId: z.ZodNullable>; providerZoneId: z.ZodNullable>; certificateStatus: z.ZodNullable>; hostnameStatus: z.ZodNullable>; verificationRecords: z.ZodNullable>>>; customMetadata: z.ZodNullable>>; emailProvider: z.ZodOptional>>; emailRegion: z.ZodNullable>>; emailProviderDomainId: z.ZodNullable>; emailReturnPathDomain: z.ZodNullable>; emailTrackingDomain: z.ZodNullable>; emailDmarcPolicy: z.ZodNullable>; emailClickTracking: z.ZodDefault; emailOpenTracking: z.ZodDefault; emailTlsMode: z.ZodNullable>>; emailConfigEncrypted: z.ZodNullable>; emailNotes: z.ZodNullable>; }, z.core.$strip>; export declare const domainUpdateSchema: z.ZodObject<{ domain: z.ZodOptional; status: z.ZodOptional>>; provider: z.ZodOptional>>; providerHostnameId: z.ZodOptional>>; providerZoneId: z.ZodOptional>>; certificateStatus: z.ZodOptional>>; hostnameStatus: z.ZodOptional>>; verificationRecords: z.ZodOptional>>>>; customMetadata: z.ZodOptional>>>; emailProvider: z.ZodOptional>>>; emailRegion: z.ZodOptional>>>; emailProviderDomainId: z.ZodOptional>>; emailReturnPathDomain: z.ZodOptional>>; emailTrackingDomain: z.ZodOptional>>; emailDmarcPolicy: z.ZodOptional>>; emailClickTracking: z.ZodOptional>; emailOpenTracking: z.ZodOptional>; emailTlsMode: z.ZodOptional>>>; emailConfigEncrypted: z.ZodOptional>>; emailNotes: z.ZodOptional>>; }, z.core.$strip>; export declare const domainSelectSchema: z.ZodObject<{ domain: z.ZodString; status: z.ZodDefault>; provider: z.ZodDefault>; providerHostnameId: z.ZodNullable>; providerZoneId: z.ZodNullable>; certificateStatus: z.ZodNullable>; hostnameStatus: z.ZodNullable>; verificationRecords: z.ZodNullable>>>; customMetadata: z.ZodNullable>>; emailProvider: z.ZodOptional>>; emailRegion: z.ZodNullable>>; emailProviderDomainId: z.ZodNullable>; emailReturnPathDomain: z.ZodNullable>; emailTrackingDomain: z.ZodNullable>; emailDmarcPolicy: z.ZodNullable>; emailClickTracking: z.ZodDefault; emailOpenTracking: z.ZodDefault; emailTlsMode: z.ZodNullable>>; emailConfigEncrypted: z.ZodNullable>; emailNotes: z.ZodNullable>; id: z.ZodString; createdAt: z.ZodNullable>; updatedAt: z.ZodNullable>; }, z.core.$strip>; export type Domain = z.infer; export type NewDomain = z.infer; export type UpdateDomain = z.infer; //# sourceMappingURL=domains.d.ts.map