/** * Customer Domain - Contract * * Constants and provider-specific types. * Main domain types exported from schema.ts * * Pattern matches billing and subscriptions domains. */ // ============================================================================ // User Role Constants // ============================================================================ export const USER_ROLE = { USER: "USER", ADMIN: "ADMIN", } as const; export type UserRoleValue = (typeof USER_ROLE)[keyof typeof USER_ROLE]; // ============================================================================ // Salesforce Integration Types (Provider-Specific, Not Validated) // ============================================================================ /** * Salesforce account field mapping * This is provider-specific and not validated at runtime */ export interface SalesforceAccountFieldMap { internetEligibility: string; customerNumber: string; } /** * Salesforce account record structure * Raw structure from Salesforce API */ export interface SalesforceAccountRecord { Id: string; Name?: string | null; WH_Account__c?: string | null; [key: string]: unknown; } // ============================================================================ // Re-export Types from Schema (Schema-First Approach) // ============================================================================ export type { User, UserAuth, UserRole, Address, AddressFormData, } from './schema';