export declare const relationshipsService: { listCustomerSignals(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, query: import("./customer-signals.js").CustomerSignalListQuery): Promise | null; createdAt: Date; updatedAt: Date; }>>; listSignalsForPerson(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string): Omit; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "customer_signals"; 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; }, {}, {}>; productId: import("drizzle-orm/pg-core").PgColumn<{ name: "product_id"; tableName: "customer_signals"; 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; }, {}, {}>; optionUnitId: import("drizzle-orm/pg-core").PgColumn<{ name: "option_unit_id"; tableName: "customer_signals"; 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; }, {}, {}>; kind: import("drizzle-orm/pg-core").PgColumn<{ name: "kind"; tableName: "customer_signals"; dataType: "string"; columnType: "PgEnumColumn"; data: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["wishlist", "notify", "inquiry", "request_offer", "referral"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; source: import("drizzle-orm/pg-core").PgColumn<{ name: "source"; tableName: "customer_signals"; dataType: "string"; columnType: "PgEnumColumn"; data: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["form", "phone", "admin", "abandoned_cart", "website", "booking"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; status: import("drizzle-orm/pg-core").PgColumn<{ name: "status"; tableName: "customer_signals"; dataType: "string"; columnType: "PgEnumColumn"; data: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["new", "contacted", "qualified", "converted", "lost", "expired"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; priority: import("drizzle-orm/pg-core").PgColumn<{ name: "priority"; tableName: "customer_signals"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "customer_signals"; 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; }, {}, {}>; tags: import("drizzle-orm/pg-core").PgColumn<{ name: "tags"; tableName: "customer_signals"; dataType: "json"; columnType: "PgJsonb"; data: string[]; driverParam: unknown; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: string[]; }>; assignedToUserId: import("drizzle-orm/pg-core").PgColumn<{ name: "assigned_to_user_id"; tableName: "customer_signals"; 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; }, {}, {}>; followUpAt: import("drizzle-orm/pg-core").PgColumn<{ name: "follow_up_at"; tableName: "customer_signals"; dataType: "date"; columnType: "PgTimestamp"; data: Date; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; resolvedBookingId: import("drizzle-orm/pg-core").PgColumn<{ name: "resolved_booking_id"; tableName: "customer_signals"; 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; }, {}, {}>; sourceSubmissionId: import("drizzle-orm/pg-core").PgColumn<{ name: "source_submission_id"; tableName: "customer_signals"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "customer_signals"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "customer_signals"; 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: "customer_signals"; 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; }, {}, {}>; }, "single", Record<"customer_signals", "not-null">, false, "where" | "orderBy", { id: string; personId: string; productId: string | null; optionUnitId: string | null; kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; source: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; status: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; priority: string; notes: string | null; tags: string[]; assignedToUserId: string | null; followUpAt: Date | null; resolvedBookingId: string | null; sourceSubmissionId: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "customer_signals"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "customer_signals"; 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; }, {}, {}>; productId: import("drizzle-orm/pg-core").PgColumn<{ name: "product_id"; tableName: "customer_signals"; 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; }, {}, {}>; optionUnitId: import("drizzle-orm/pg-core").PgColumn<{ name: "option_unit_id"; tableName: "customer_signals"; 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; }, {}, {}>; kind: import("drizzle-orm/pg-core").PgColumn<{ name: "kind"; tableName: "customer_signals"; dataType: "string"; columnType: "PgEnumColumn"; data: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["wishlist", "notify", "inquiry", "request_offer", "referral"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; source: import("drizzle-orm/pg-core").PgColumn<{ name: "source"; tableName: "customer_signals"; dataType: "string"; columnType: "PgEnumColumn"; data: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["form", "phone", "admin", "abandoned_cart", "website", "booking"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; status: import("drizzle-orm/pg-core").PgColumn<{ name: "status"; tableName: "customer_signals"; dataType: "string"; columnType: "PgEnumColumn"; data: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["new", "contacted", "qualified", "converted", "lost", "expired"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; priority: import("drizzle-orm/pg-core").PgColumn<{ name: "priority"; tableName: "customer_signals"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "customer_signals"; 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; }, {}, {}>; tags: import("drizzle-orm/pg-core").PgColumn<{ name: "tags"; tableName: "customer_signals"; dataType: "json"; columnType: "PgJsonb"; data: string[]; driverParam: unknown; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: string[]; }>; assignedToUserId: import("drizzle-orm/pg-core").PgColumn<{ name: "assigned_to_user_id"; tableName: "customer_signals"; 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; }, {}, {}>; followUpAt: import("drizzle-orm/pg-core").PgColumn<{ name: "follow_up_at"; tableName: "customer_signals"; dataType: "date"; columnType: "PgTimestamp"; data: Date; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; resolvedBookingId: import("drizzle-orm/pg-core").PgColumn<{ name: "resolved_booking_id"; tableName: "customer_signals"; 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; }, {}, {}>; sourceSubmissionId: import("drizzle-orm/pg-core").PgColumn<{ name: "source_submission_id"; tableName: "customer_signals"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "customer_signals"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "customer_signals"; 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: "customer_signals"; 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; }, {}, {}>; }>, "where" | "orderBy">; getCustomerSignal(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; personId: string; productId: string | null; optionUnitId: string | null; kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; source: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; status: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; priority: string; notes: string | null; tags: string[]; assignedToUserId: string | null; followUpAt: Date | null; resolvedBookingId: string | null; sourceSubmissionId: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; createCustomerSignal(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, data: import("./customer-signals.js").CreateCustomerSignalInput): Promise<{ id: string; status: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; createdAt: Date; source: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; tags: string[]; notes: string | null; updatedAt: Date; personId: string; metadata: Record | null; kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; productId: string | null; optionUnitId: string | null; priority: string; assignedToUserId: string | null; followUpAt: Date | null; resolvedBookingId: string | null; sourceSubmissionId: string | null; } | null>; updateCustomerSignal(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("./customer-signals.js").UpdateCustomerSignalInput): Promise<{ id: string; personId: string; productId: string | null; optionUnitId: string | null; kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; source: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; status: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; priority: string; notes: string | null; tags: string[]; assignedToUserId: string | null; followUpAt: Date | null; resolvedBookingId: string | null; sourceSubmissionId: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; deleteCustomerSignal(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; resolveCustomerSignalToBooking(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, signalId: string, bookingId: string): Promise<{ id: string; personId: string; productId: string | null; optionUnitId: string | null; kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral"; source: "form" | "phone" | "admin" | "abandoned_cart" | "website" | "booking"; status: "new" | "contacted" | "qualified" | "converted" | "lost" | "expired"; priority: string; notes: string | null; tags: string[]; assignedToUserId: string | null; followUpAt: Date | null; resolvedBookingId: string | null; sourceSubmissionId: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; listPersonRelationships(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, query?: import("./person-relationships.js").PersonRelationshipListQuery): Omit; fromPersonId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_relationships"; 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; }, {}, {}>; toPersonId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_relationships"; 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; }, {}, {}>; kind: import("drizzle-orm/pg-core").PgColumn<{ name: "kind"; tableName: "person_relationships"; dataType: "string"; columnType: "PgEnumColumn"; data: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["spouse", "partner", "parent", "child", "sibling", "guardian", "ward", "emergency_contact", "friend", "travel_companion", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; inverseKind: import("drizzle-orm/pg-core").PgColumn<{ name: "inverse_kind"; tableName: "person_relationships"; dataType: "string"; columnType: "PgEnumColumn"; data: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["spouse", "partner", "parent", "child", "sibling", "guardian", "ward", "emergency_contact", "friend", "travel_companion", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; startDate: import("drizzle-orm/pg-core").PgColumn<{ name: "start_date"; tableName: "person_relationships"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; endDate: import("drizzle-orm/pg-core").PgColumn<{ name: "end_date"; tableName: "person_relationships"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "person_relationships"; 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; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "person_relationships"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "person_relationships"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_relationships"; 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: "person_relationships"; 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; }, {}, {}>; }, "single", Record<"person_relationships", "not-null">, false, "limit" | "offset" | "where" | "orderBy", { id: string; fromPersonId: string; toPersonId: string; kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null; startDate: string | null; endDate: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_relationships"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; fromPersonId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_relationships"; 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; }, {}, {}>; toPersonId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_relationships"; 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; }, {}, {}>; kind: import("drizzle-orm/pg-core").PgColumn<{ name: "kind"; tableName: "person_relationships"; dataType: "string"; columnType: "PgEnumColumn"; data: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["spouse", "partner", "parent", "child", "sibling", "guardian", "ward", "emergency_contact", "friend", "travel_companion", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; inverseKind: import("drizzle-orm/pg-core").PgColumn<{ name: "inverse_kind"; tableName: "person_relationships"; dataType: "string"; columnType: "PgEnumColumn"; data: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["spouse", "partner", "parent", "child", "sibling", "guardian", "ward", "emergency_contact", "friend", "travel_companion", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; startDate: import("drizzle-orm/pg-core").PgColumn<{ name: "start_date"; tableName: "person_relationships"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; endDate: import("drizzle-orm/pg-core").PgColumn<{ name: "end_date"; tableName: "person_relationships"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "person_relationships"; 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; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "person_relationships"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "person_relationships"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_relationships"; 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: "person_relationships"; 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; }, {}, {}>; }>, "limit" | "offset" | "where" | "orderBy">; getPersonRelationship(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; fromPersonId: string; toPersonId: string; kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null; startDate: string | null; endDate: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; createPersonRelationship(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, fromPersonId: string, data: import("./person-relationships.js").CreatePersonRelationshipInput): Promise<{ id: string; createdAt: Date; notes: string | null; updatedAt: Date; isPrimary: boolean; metadata: Record | null; fromPersonId: string; toPersonId: string; kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null; startDate: string | null; endDate: string | null; } | null>; updatePersonRelationship(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("./person-relationships.js").UpdatePersonRelationshipInput): Promise<{ id: string; fromPersonId: string; toPersonId: string; kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion"; inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null; startDate: string | null; endDate: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; deletePersonRelationship(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; listPersonDocuments(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, query?: import("./person-documents.js").PersonDocumentListQuery): Omit; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_documents"; 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; }, {}, {}>; type: import("drizzle-orm/pg-core").PgColumn<{ name: "type"; tableName: "person_documents"; dataType: "string"; columnType: "PgEnumColumn"; data: "other" | "passport" | "id_card" | "driver_license" | "visa"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["passport", "id_card", "driver_license", "visa", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; numberEncrypted: import("drizzle-orm/pg-core").PgColumn<{ name: "number_encrypted"; tableName: "person_documents"; dataType: "json"; columnType: "PgJsonb"; data: { enc: string; } | null; driverParam: unknown; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: { enc: string; } | null; }>; issuingAuthority: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_authority"; tableName: "person_documents"; 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; }, {}, {}>; issuingCountry: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_country"; tableName: "person_documents"; 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; }, {}, {}>; issueDate: import("drizzle-orm/pg-core").PgColumn<{ name: "issue_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; expiryDate: import("drizzle-orm/pg-core").PgColumn<{ name: "expiry_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; attachmentId: import("drizzle-orm/pg-core").PgColumn<{ name: "attachment_id"; tableName: "person_documents"; 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; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "person_documents"; 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; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "person_documents"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "person_documents"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_documents"; 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: "person_documents"; 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; }, {}, {}>; }, "single", Record<"person_documents", "not-null">, false, "limit" | "offset" | "where" | "orderBy", { id: string; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_documents"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_documents"; 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; }, {}, {}>; type: import("drizzle-orm/pg-core").PgColumn<{ name: "type"; tableName: "person_documents"; dataType: "string"; columnType: "PgEnumColumn"; data: "other" | "passport" | "id_card" | "driver_license" | "visa"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["passport", "id_card", "driver_license", "visa", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; numberEncrypted: import("drizzle-orm/pg-core").PgColumn<{ name: "number_encrypted"; tableName: "person_documents"; dataType: "json"; columnType: "PgJsonb"; data: { enc: string; } | null; driverParam: unknown; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: { enc: string; } | null; }>; issuingAuthority: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_authority"; tableName: "person_documents"; 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; }, {}, {}>; issuingCountry: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_country"; tableName: "person_documents"; 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; }, {}, {}>; issueDate: import("drizzle-orm/pg-core").PgColumn<{ name: "issue_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; expiryDate: import("drizzle-orm/pg-core").PgColumn<{ name: "expiry_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; attachmentId: import("drizzle-orm/pg-core").PgColumn<{ name: "attachment_id"; tableName: "person_documents"; 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; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "person_documents"; 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; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "person_documents"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "person_documents"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_documents"; 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: "person_documents"; 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; }, {}, {}>; }>, "limit" | "offset" | "where" | "orderBy">; getPersonDocument(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, documentId: string): Promise<{ id: string; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; revealPersonDocumentNumber(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, documentId: string, options: { kms: import("@voyant-travel/utils").KmsProvider; keyRef?: import("@voyant-travel/utils").KeyRef; }): Promise<{ documentId: string; number: string | null; } | null>; getPrimaryPersonDocument(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, type: import("./person-documents.js").PersonDocumentType): Promise<{ id: string; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; createPersonDocument(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, data: import("./person-documents.js").CreatePersonDocumentInput): Promise<{ id: string; createdAt: Date; notes: string | null; updatedAt: Date; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; metadata: Record | null; } | null>; updatePersonDocument(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, documentId: string, data: import("./person-documents.js").UpdatePersonDocumentInput): Promise<{ id: string; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; deletePersonDocument(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, documentId: string): Promise<{ id: string; } | null>; setPrimaryPersonDocument(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, documentId: string): Promise<{ id: string; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; loadPersonTravelSnapshot(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, options: { kms: import("@voyant-travel/utils").KmsProvider; keyRef?: import("@voyant-travel/utils").KeyRef; }): Promise; listExpiringPersonDocuments(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, daysAhead?: number): Omit; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_documents"; 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; }, {}, {}>; type: import("drizzle-orm/pg-core").PgColumn<{ name: "type"; tableName: "person_documents"; dataType: "string"; columnType: "PgEnumColumn"; data: "other" | "passport" | "id_card" | "driver_license" | "visa"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["passport", "id_card", "driver_license", "visa", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; numberEncrypted: import("drizzle-orm/pg-core").PgColumn<{ name: "number_encrypted"; tableName: "person_documents"; dataType: "json"; columnType: "PgJsonb"; data: { enc: string; } | null; driverParam: unknown; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: { enc: string; } | null; }>; issuingAuthority: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_authority"; tableName: "person_documents"; 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; }, {}, {}>; issuingCountry: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_country"; tableName: "person_documents"; 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; }, {}, {}>; issueDate: import("drizzle-orm/pg-core").PgColumn<{ name: "issue_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; expiryDate: import("drizzle-orm/pg-core").PgColumn<{ name: "expiry_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; attachmentId: import("drizzle-orm/pg-core").PgColumn<{ name: "attachment_id"; tableName: "person_documents"; 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; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "person_documents"; 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; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "person_documents"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "person_documents"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_documents"; 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: "person_documents"; 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; }, {}, {}>; }, "single", Record<"person_documents", "not-null">, false, "where" | "orderBy", { id: string; personId: string; type: "other" | "passport" | "id_card" | "driver_license" | "visa"; numberEncrypted: { enc: string; } | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_documents"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_documents"; 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; }, {}, {}>; type: import("drizzle-orm/pg-core").PgColumn<{ name: "type"; tableName: "person_documents"; dataType: "string"; columnType: "PgEnumColumn"; data: "other" | "passport" | "id_card" | "driver_license" | "visa"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["passport", "id_card", "driver_license", "visa", "other"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; numberEncrypted: import("drizzle-orm/pg-core").PgColumn<{ name: "number_encrypted"; tableName: "person_documents"; dataType: "json"; columnType: "PgJsonb"; data: { enc: string; } | null; driverParam: unknown; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, { $type: { enc: string; } | null; }>; issuingAuthority: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_authority"; tableName: "person_documents"; 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; }, {}, {}>; issuingCountry: import("drizzle-orm/pg-core").PgColumn<{ name: "issuing_country"; tableName: "person_documents"; 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; }, {}, {}>; issueDate: import("drizzle-orm/pg-core").PgColumn<{ name: "issue_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; expiryDate: import("drizzle-orm/pg-core").PgColumn<{ name: "expiry_date"; tableName: "person_documents"; dataType: "string"; columnType: "PgDateString"; data: string; driverParam: string; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; attachmentId: import("drizzle-orm/pg-core").PgColumn<{ name: "attachment_id"; tableName: "person_documents"; 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; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "person_documents"; 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; }, {}, {}>; notes: import("drizzle-orm/pg-core").PgColumn<{ name: "notes"; tableName: "person_documents"; 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; }, {}, {}>; metadata: import("drizzle-orm/pg-core").PgColumn<{ name: "metadata"; tableName: "person_documents"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_documents"; 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: "person_documents"; 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; }, {}, {}>; }>, "where" | "orderBy">; listActivities(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, query: { limit: number; offset: number; ownerId?: string | undefined; status?: "planned" | "done" | "cancelled" | undefined; type?: "email" | "meeting" | "call" | "task" | "follow_up" | "note" | undefined; entityType?: "person" | "organization" | "proposal" | "activity" | undefined; entityId?: string | undefined; search?: string | undefined; }): Promise>; getActivityById(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; subject: string; type: "email" | "meeting" | "call" | "task" | "follow_up" | "note"; ownerId: string | null; status: "planned" | "done" | "cancelled"; dueAt: Date | null; completedAt: Date | null; location: string | null; description: string | null; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; createdAt: Date; updatedAt: Date; } | null>; createActivity(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, data: { subject: string; type: "email" | "meeting" | "call" | "task" | "follow_up" | "note"; status: "planned" | "done" | "cancelled"; ownerId?: string | null | undefined; dueAt?: string | null | undefined; completedAt?: string | null | undefined; location?: string | null | undefined; description?: string | null | undefined; }): Promise<{ id: string; status: "planned" | "done" | "cancelled"; createdAt: Date; ownerId: string | null; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; updatedAt: Date; type: "email" | "meeting" | "call" | "task" | "follow_up" | "note"; subject: string; description: string | null; dueAt: Date | null; completedAt: Date | null; location: string | null; } | undefined>; updateActivity(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: { subject?: string | undefined; type?: "email" | "meeting" | "call" | "task" | "follow_up" | "note" | undefined; ownerId?: string | null | undefined; status?: "planned" | "done" | "cancelled" | undefined; dueAt?: string | null | undefined; completedAt?: string | null | undefined; location?: string | null | undefined; description?: string | null | undefined; }): Promise<{ id: string; subject: string; type: "email" | "meeting" | "call" | "task" | "follow_up" | "note"; ownerId: string | null; status: "planned" | "done" | "cancelled"; dueAt: Date | null; completedAt: Date | null; location: string | null; description: string | null; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; createdAt: Date; updatedAt: Date; } | null>; deleteActivity(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; listActivityLinks(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, activityId: string): Omit; activityId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_links"; 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; }, {}, {}>; entityType: import("drizzle-orm/pg-core").PgColumn<{ name: "entity_type"; tableName: "activity_links"; dataType: "string"; columnType: "PgEnumColumn"; data: "person" | "organization" | "proposal" | "activity"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["organization", "person", "proposal", "activity"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; entityId: import("drizzle-orm/pg-core").PgColumn<{ name: "entity_id"; tableName: "activity_links"; 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; }, {}, {}>; role: import("drizzle-orm/pg-core").PgColumn<{ name: "role"; tableName: "activity_links"; dataType: "string"; columnType: "PgEnumColumn"; data: "primary" | "related"; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["primary", "related"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "activity_links"; 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; }, {}, {}>; }, "single", Record<"activity_links", "not-null">, false, "where" | "orderBy", { id: string; activityId: string; entityType: "person" | "organization" | "proposal" | "activity"; entityId: string; role: "primary" | "related"; createdAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_links"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; activityId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_links"; 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; }, {}, {}>; entityType: import("drizzle-orm/pg-core").PgColumn<{ name: "entity_type"; tableName: "activity_links"; dataType: "string"; columnType: "PgEnumColumn"; data: "person" | "organization" | "proposal" | "activity"; driverParam: string; notNull: true; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["organization", "person", "proposal", "activity"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; entityId: import("drizzle-orm/pg-core").PgColumn<{ name: "entity_id"; tableName: "activity_links"; 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; }, {}, {}>; role: import("drizzle-orm/pg-core").PgColumn<{ name: "role"; tableName: "activity_links"; dataType: "string"; columnType: "PgEnumColumn"; data: "primary" | "related"; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: ["primary", "related"]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "activity_links"; 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; }, {}, {}>; }>, "where" | "orderBy">; createActivityLink(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, activityId: string, data: { entityType: "person" | "organization" | "proposal" | "activity"; entityId: string; role: "primary" | "related"; }): Promise<{ id: string; createdAt: Date; activityId: string; entityType: "person" | "organization" | "proposal" | "activity"; entityId: string; role: "primary" | "related"; } | null | undefined>; deleteActivityLink(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; listActivityParticipants(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, activityId: string): Omit; activityId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_participants"; 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; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_participants"; 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; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "activity_participants"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "activity_participants"; 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; }, {}, {}>; }, "single", Record<"activity_participants", "not-null">, false, "where" | "orderBy", { id: string; activityId: string; personId: string; isPrimary: boolean; createdAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_participants"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; activityId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_participants"; 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; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "activity_participants"; 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; }, {}, {}>; isPrimary: import("drizzle-orm/pg-core").PgColumn<{ name: "is_primary"; tableName: "activity_participants"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "activity_participants"; 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; }, {}, {}>; }>, "where" | "orderBy">; createActivityParticipant(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, activityId: string, data: { personId: string; isPrimary: boolean; }): Promise<{ id: string; createdAt: Date; personId: string; isPrimary: boolean; activityId: string; } | undefined>; deleteActivityParticipant(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; findPersonByContactPoint: typeof import("./accounts-resolve.js").findPersonByContactPoint; upsertPersonFromContact: typeof import("./accounts-resolve.js").upsertPersonFromContact; mergePerson(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, keepId: string, mergeId: string): Promise<{ id: string; organizationId: string | null; firstName: string; middleName: string | null; lastName: string; gender: string | null; jobTitle: string | null; relation: "client" | "partner" | "supplier" | "other" | null; preferredLanguage: string | null; preferredCurrency: string | null; ownerId: string | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; dateOfBirth: string | null; notes: string | null; accessibilityEncrypted: { enc: string; } | null; dietaryEncrypted: { enc: string; } | null; loyaltyEncrypted: { enc: string; } | null; insuranceEncrypted: { enc: string; } | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; }>; mergeOrganization(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, keepId: string, mergeId: string): Promise<{ id: string; name: string; legalName: string | null; website: string | null; taxId: string | null; industry: string | null; relation: "client" | "partner" | "supplier" | "other" | null; ownerId: string | null; defaultCurrency: string | null; preferredLanguage: string | null; paymentTerms: number | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; notes: string | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; }>; listPeople(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, query: import("./accounts-shared.js").PersonListQuery, searchableCustomFields?: ReadonlyArray): Promise<{ data: ({ id: string; organizationId: string | null; firstName: string; middleName: string | null; lastName: string; gender: string | null; jobTitle: string | null; relation: "client" | "partner" | "supplier" | "other" | null; preferredLanguage: string | null; preferredCurrency: string | null; ownerId: string | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; dateOfBirth: string | null; notes: string | null; accessibilityEncrypted: { enc: string; } | null; dietaryEncrypted: { enc: string; } | null; loyaltyEncrypted: { enc: string; } | null; insuranceEncrypted: { enc: string; } | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; } & import("./accounts-shared.js").PersonHydratedFields)[]; total: number; limit: number; offset: number; }>; getPersonById(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<({ id: string; organizationId: string | null; firstName: string; middleName: string | null; lastName: string; gender: string | null; jobTitle: string | null; relation: "client" | "partner" | "supplier" | "other" | null; preferredLanguage: string | null; preferredCurrency: string | null; ownerId: string | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; dateOfBirth: string | null; notes: string | null; accessibilityEncrypted: { enc: string; } | null; dietaryEncrypted: { enc: string; } | null; loyaltyEncrypted: { enc: string; } | null; insuranceEncrypted: { enc: string; } | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; } & import("./accounts-shared.js").PersonHydratedFields) | null>; createPerson(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, data: import("./accounts-shared.js").CreatePersonInput): Promise<({ id: string; organizationId: string | null; firstName: string; middleName: string | null; lastName: string; gender: string | null; jobTitle: string | null; relation: "client" | "partner" | "supplier" | "other" | null; preferredLanguage: string | null; preferredCurrency: string | null; ownerId: string | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; dateOfBirth: string | null; notes: string | null; accessibilityEncrypted: { enc: string; } | null; dietaryEncrypted: { enc: string; } | null; loyaltyEncrypted: { enc: string; } | null; insuranceEncrypted: { enc: string; } | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; } & import("./accounts-shared.js").PersonHydratedFields) | null>; updatePerson(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("./accounts-shared.js").UpdatePersonInput): Promise<({ id: string; organizationId: string | null; firstName: string; middleName: string | null; lastName: string; gender: string | null; jobTitle: string | null; relation: "client" | "partner" | "supplier" | "other" | null; preferredLanguage: string | null; preferredCurrency: string | null; ownerId: string | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; dateOfBirth: string | null; notes: string | null; accessibilityEncrypted: { enc: string; } | null; dietaryEncrypted: { enc: string; } | null; loyaltyEncrypted: { enc: string; } | null; insuranceEncrypted: { enc: string; } | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; } & import("./accounts-shared.js").PersonHydratedFields) | null>; deletePerson(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; listContactMethods(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, entityType: "organization" | "person", entityId: string): Promise<{ id: string; entityType: string; entityId: string; kind: "email" | "phone" | "mobile" | "whatsapp" | "website" | "sms" | "fax" | "social" | "other"; label: string | null; value: string; normalizedValue: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; }[]>; createContactMethod(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, entityType: "organization" | "person", entityId: string, data: import("./accounts-shared.js").CreateContactPointInput | import("./accounts-shared.js").CreateContactPointForEntityInput): Promise<{ id: string; entityType: string; entityId: string; kind: "email" | "phone" | "mobile" | "whatsapp" | "website" | "sms" | "fax" | "social" | "other"; createdAt: Date; updatedAt: Date; label: string | null; value: string; normalizedValue: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; } | null>; updateContactMethod(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("./accounts-shared.js").UpdateContactPointInput): Promise<{ id: string; entityType: string; entityId: string; kind: "email" | "phone" | "mobile" | "whatsapp" | "website" | "sms" | "fax" | "social" | "other"; label: string | null; value: string; normalizedValue: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; deleteContactMethod(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; listAddresses(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, entityType: "organization" | "person", entityId: string): Promise<{ id: string; entityType: string; entityId: string; label: "other" | "primary" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; latitude: number | null; longitude: number | null; timezone: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; }[]>; createAddress(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, entityType: "organization" | "person", entityId: string, data: import("./accounts-shared.js").CreateAddressInput | import("./accounts-shared.js").CreateAddressForEntityInput): Promise<{ id: string; entityType: string; entityId: string; createdAt: Date; updatedAt: Date; label: "other" | "primary" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal"; isPrimary: boolean; notes: string | null; metadata: Record | null; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; latitude: number | null; longitude: number | null; timezone: string | null; } | null>; updateAddress(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("./accounts-shared.js").UpdateAddressInput): Promise<{ id: string; entityType: string; entityId: string; label: "other" | "primary" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; latitude: number | null; longitude: number | null; timezone: string | null; isPrimary: boolean; notes: string | null; metadata: Record | null; createdAt: Date; updatedAt: Date; } | null>; deleteAddress(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | null>; listPersonNotes(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string): Omit; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_notes"; 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; }, {}, {}>; authorId: import("drizzle-orm/pg-core").PgColumn<{ name: "author_id"; tableName: "person_notes"; 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; }, {}, {}>; content: import("drizzle-orm/pg-core").PgColumn<{ name: "content"; tableName: "person_notes"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_notes"; 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; }, {}, {}>; }, "single", Record<"person_notes", "not-null">, false, "where" | "orderBy", { id: string; personId: string; authorId: string; content: string; createdAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_notes"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_notes"; 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; }, {}, {}>; authorId: import("drizzle-orm/pg-core").PgColumn<{ name: "author_id"; tableName: "person_notes"; 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; }, {}, {}>; content: import("drizzle-orm/pg-core").PgColumn<{ name: "content"; tableName: "person_notes"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_notes"; 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; }, {}, {}>; }>, "where" | "orderBy">; createPersonNote(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, userId: string, data: import("./accounts-shared.js").CreatePersonNoteInput): Promise<{ id: string; createdAt: Date; personId: string; authorId: string; content: string; } | null | undefined>; listOrganizationNotes(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, organizationId: string): Omit; organizationId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "organization_notes"; 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; }, {}, {}>; authorId: import("drizzle-orm/pg-core").PgColumn<{ name: "author_id"; tableName: "organization_notes"; 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; }, {}, {}>; content: import("drizzle-orm/pg-core").PgColumn<{ name: "content"; tableName: "organization_notes"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "organization_notes"; 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; }, {}, {}>; }, "single", Record<"organization_notes", "not-null">, false, "where" | "orderBy", { id: string; organizationId: string; authorId: string; content: string; createdAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "organization_notes"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; organizationId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "organization_notes"; 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; }, {}, {}>; authorId: import("drizzle-orm/pg-core").PgColumn<{ name: "author_id"; tableName: "organization_notes"; 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; }, {}, {}>; content: import("drizzle-orm/pg-core").PgColumn<{ name: "content"; tableName: "organization_notes"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "organization_notes"; 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; }, {}, {}>; }>, "where" | "orderBy">; createOrganizationNote(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, organizationId: string, userId: string, data: import("./accounts-shared.js").CreateOrganizationNoteInput): Promise<{ id: string; organizationId: string; createdAt: Date; authorId: string; content: string; } | null | undefined>; updatePersonNote(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, content: string): Promise<{ id: string; personId: string; authorId: string; content: string; createdAt: Date; } | null>; deletePersonNote(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; createdAt: Date; personId: string; authorId: string; content: string; } | null>; listPersonPaymentMethods(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string): Omit; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_payment_methods"; 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; }, {}, {}>; brand: import("drizzle-orm/pg-core").PgColumn<{ name: "brand"; tableName: "person_payment_methods"; 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; }, {}, {}>; last4: import("drizzle-orm/pg-core").PgColumn<{ name: "last4"; tableName: "person_payment_methods"; 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; }, {}, {}>; holderName: import("drizzle-orm/pg-core").PgColumn<{ name: "holder_name"; tableName: "person_payment_methods"; 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; }, {}, {}>; expMonth: import("drizzle-orm/pg-core").PgColumn<{ name: "exp_month"; tableName: "person_payment_methods"; dataType: "number"; columnType: "PgInteger"; data: number; driverParam: string | number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; expYear: import("drizzle-orm/pg-core").PgColumn<{ name: "exp_year"; tableName: "person_payment_methods"; dataType: "number"; columnType: "PgInteger"; data: number; driverParam: string | number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; processorToken: import("drizzle-orm/pg-core").PgColumn<{ name: "processor_token"; tableName: "person_payment_methods"; 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; }, {}, {}>; isDefault: import("drizzle-orm/pg-core").PgColumn<{ name: "is_default"; tableName: "person_payment_methods"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_payment_methods"; 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; }, {}, {}>; }, "single", Record<"person_payment_methods", "not-null">, false, "where" | "orderBy", { id: string; personId: string; brand: string; last4: string | null; holderName: string | null; expMonth: number | null; expYear: number | null; processorToken: string; isDefault: boolean; createdAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_payment_methods"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; personId: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "person_payment_methods"; 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; }, {}, {}>; brand: import("drizzle-orm/pg-core").PgColumn<{ name: "brand"; tableName: "person_payment_methods"; 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; }, {}, {}>; last4: import("drizzle-orm/pg-core").PgColumn<{ name: "last4"; tableName: "person_payment_methods"; 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; }, {}, {}>; holderName: import("drizzle-orm/pg-core").PgColumn<{ name: "holder_name"; tableName: "person_payment_methods"; 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; }, {}, {}>; expMonth: import("drizzle-orm/pg-core").PgColumn<{ name: "exp_month"; tableName: "person_payment_methods"; dataType: "number"; columnType: "PgInteger"; data: number; driverParam: string | number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; expYear: import("drizzle-orm/pg-core").PgColumn<{ name: "exp_year"; tableName: "person_payment_methods"; dataType: "number"; columnType: "PgInteger"; data: number; driverParam: string | number; notNull: false; hasDefault: false; isPrimaryKey: false; isAutoincrement: false; hasRuntimeDefault: false; enumValues: undefined; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; processorToken: import("drizzle-orm/pg-core").PgColumn<{ name: "processor_token"; tableName: "person_payment_methods"; 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; }, {}, {}>; isDefault: import("drizzle-orm/pg-core").PgColumn<{ name: "is_default"; tableName: "person_payment_methods"; 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; }, {}, {}>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "person_payment_methods"; 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; }, {}, {}>; }>, "where" | "orderBy">; createPersonPaymentMethod(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, data: import("@voyant-travel/relationships-contracts").InsertPersonPaymentMethodInput): Promise<{ id: string; createdAt: Date; brand: string; personId: string; last4: string | null; holderName: string | null; expMonth: number | null; expYear: number | null; processorToken: string; isDefault: boolean; } | null>; updatePersonPaymentMethod(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("@voyant-travel/relationships-contracts").UpdatePersonPaymentMethodInput): Promise<{ id: string; personId: string; brand: string; last4: string | null; holderName: string | null; expMonth: number | null; expYear: number | null; processorToken: string; isDefault: boolean; createdAt: Date; } | null>; deletePersonPaymentMethod(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; createdAt: Date; brand: string; personId: string; last4: string | null; holderName: string | null; expMonth: number | null; expYear: number | null; processorToken: string; isDefault: boolean; } | null>; updateOrganizationNote(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, content: string): Promise<{ id: string; organizationId: string; authorId: string; content: string; createdAt: Date; } | null>; deleteOrganizationNote(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; organizationId: string; createdAt: Date; authorId: string; content: string; } | null>; listCommunications(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, query: import("./accounts-shared.js").CommunicationListQuery): Promise<{ id: string; personId: string; organizationId: string | null; channel: "phone" | "other" | "email" | "whatsapp" | "sms" | "meeting"; direction: "inbound" | "outbound"; subject: string | null; content: string | null; sentAt: Date | null; createdAt: Date; }[]>; createCommunication(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, personId: string, data: import("./accounts-shared.js").CreateCommunicationLogInput): Promise<{ id: string; organizationId: string | null; createdAt: Date; personId: string; content: string | null; channel: "phone" | "other" | "email" | "whatsapp" | "sms" | "meeting"; direction: "inbound" | "outbound"; subject: string | null; sentAt: Date | null; } | null | undefined>; listSegments(db: import("drizzle-orm/postgres-js").PostgresJsDatabase): Omit; name: import("drizzle-orm/pg-core").PgColumn<{ name: "name"; tableName: "segments"; 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; }, {}, {}>; description: import("drizzle-orm/pg-core").PgColumn<{ name: "description"; tableName: "segments"; 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; }, {}, {}>; conditions: import("drizzle-orm/pg-core").PgColumn<{ name: "conditions"; tableName: "segments"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "segments"; 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: "segments"; 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; }, {}, {}>; }, "single", Record<"segments", "not-null">, false, "orderBy", { id: string; name: string; description: string | null; conditions: Record | null; createdAt: Date; updatedAt: Date; }[], { id: import("drizzle-orm/pg-core").PgColumn<{ name: string; tableName: "segments"; dataType: "string"; columnType: "PgText"; data: string; driverParam: string; notNull: true; hasDefault: true; isPrimaryKey: true; isAutoincrement: false; hasRuntimeDefault: true; enumValues: [string, ...string[]]; baseColumn: never; identity: undefined; generated: undefined; }, {}, {}>; name: import("drizzle-orm/pg-core").PgColumn<{ name: "name"; tableName: "segments"; 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; }, {}, {}>; description: import("drizzle-orm/pg-core").PgColumn<{ name: "description"; tableName: "segments"; 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; }, {}, {}>; conditions: import("drizzle-orm/pg-core").PgColumn<{ name: "conditions"; tableName: "segments"; 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; }>; createdAt: import("drizzle-orm/pg-core").PgColumn<{ name: "created_at"; tableName: "segments"; 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: "segments"; 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; }, {}, {}>; }>, "orderBy">; createSegment(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, data: import("./accounts-shared.js").CreateSegmentInput): Promise<{ id: string; createdAt: Date; name: string; updatedAt: Date; description: string | null; conditions: Record | null; } | undefined>; deleteSegment(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, segmentId: string): Promise<{ id: string; } | null>; exportPeopleCsv(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, customFields?: ReadonlyArray): Promise; importPeopleCsv(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, csvText: string): Promise<{ error: "CSV must have a header row and at least one data row"; imported?: undefined; errors?: undefined; } | { imported: number; errors: { row: number; error: string; }[]; error?: undefined; }>; listOrganizations(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, query: import("./accounts-shared.js").OrganizationListQuery): Promise>; getOrganizationById(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; name: string; legalName: string | null; website: string | null; taxId: string | null; industry: string | null; relation: "client" | "partner" | "supplier" | "other" | null; ownerId: string | null; defaultCurrency: string | null; preferredLanguage: string | null; paymentTerms: number | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; notes: string | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; } | null>; createOrganization(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, data: import("./accounts-shared.js").CreateOrganizationInput): Promise<{ id: string; status: "active" | "inactive" | "archived"; createdAt: Date; name: string; website: string | null; source: string | null; legalName: string | null; taxId: string | null; industry: string | null; relation: "client" | "partner" | "supplier" | "other" | null; ownerId: string | null; defaultCurrency: string | null; preferredLanguage: string | null; paymentTerms: number | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; notes: string | null; updatedAt: Date; archivedAt: Date | null; } | undefined>; updateOrganization(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string, data: import("./accounts-shared.js").UpdateOrganizationInput): Promise<{ id: string; name: string; legalName: string | null; website: string | null; taxId: string | null; industry: string | null; relation: "client" | "partner" | "supplier" | "other" | null; ownerId: string | null; defaultCurrency: string | null; preferredLanguage: string | null; paymentTerms: number | null; status: "active" | "inactive" | "archived"; source: string | null; sourceRef: string | null; tags: string[]; customFields: import("@voyant-travel/core/custom-fields").NamespacedCustomFieldValues; notes: string | null; createdAt: Date; updatedAt: Date; archivedAt: Date | null; } | null>; deleteOrganization(db: import("drizzle-orm/postgres-js").PostgresJsDatabase, id: string): Promise<{ id: string; } | { conflict: "linked_people"; linkedPeopleCount: number; } | null>; }; export type { CreateCustomerSignalInput, CustomerSignalListQuery, UpdateCustomerSignalInput, } from "./customer-signals.js"; export { customerSignalsService } from "./customer-signals.js"; export type { CreatePersonDocumentInput, PersonDocumentListQuery, PersonDocumentType, PersonTravelSnapshot, UpdatePersonDocumentInput, } from "./person-documents.js"; export { personDocumentNumberPlaintextSchema, personDocumentsService, personPiiBlobPlaintextSchema, } from "./person-documents.js"; export type { CreatePersonRelationshipInput, PersonRelationshipKind, PersonRelationshipListQuery, UpdatePersonRelationshipInput, } from "./person-relationships.js"; export { personRelationshipsService } from "./person-relationships.js";