- Changed TypeScript target and library settings in tsconfig files to align with ESNext standards. - Updated pnpm version in GitHub workflows for better dependency management. - Modified Dockerfile to reflect the updated pnpm version. - Adjusted import statements across various domain modules to include file extensions for consistency and compatibility. - Cleaned up TypeScript configuration files for improved clarity and organization.
56 lines
1.5 KiB
TypeScript
56 lines
1.5 KiB
TypeScript
/**
|
|
* 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.js';
|