- 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.
37 lines
736 B
TypeScript
37 lines
736 B
TypeScript
/**
|
|
* ID Mapping Domain - Contract
|
|
*
|
|
* Normalized types for mapping portal users to external systems.
|
|
*/
|
|
|
|
import type { IsoDateTimeString } from "../common/types.js";
|
|
|
|
export interface UserIdMapping {
|
|
id: string;
|
|
userId: string;
|
|
whmcsClientId: number;
|
|
sfAccountId?: string | null;
|
|
createdAt: IsoDateTimeString | Date;
|
|
updatedAt: IsoDateTimeString | Date;
|
|
}
|
|
|
|
export interface CreateMappingRequest {
|
|
userId: string;
|
|
whmcsClientId: number;
|
|
sfAccountId?: string;
|
|
}
|
|
|
|
export interface UpdateMappingRequest {
|
|
whmcsClientId?: number;
|
|
sfAccountId?: string;
|
|
}
|
|
|
|
/**
|
|
* Validation result for mapping operations
|
|
*/
|
|
export interface MappingValidationResult {
|
|
isValid: boolean;
|
|
errors: string[];
|
|
warnings: string[];
|
|
}
|