import { ClientStatus, ClientForfait } from './globalConst'; import { IR8Phone } from './IR8Phone'; import { IR8Address } from './IR8Address'; /** FireStore Database Client JSON Format. Same as IR8Client. */ export declare type IR8ClientFS = IR8Client; /** * Restomax Client 1--1 linked to Etab via cmaxnum * - It is a copy of the COBOL CMAX accounting Client ! * - Should be used only by admin console ! * - Firestore docId === client.cmaxnum * * objClass: 2035 * firestore.path: clients/$cmaxnum */ export interface IR8Client { cmaxnum: string; cmaxGroup?: string; name: string; eoLive?: string; status?: ClientStatus; forfait?: ClientForfait; eoRental?: string; licToken?: string; salesman?: string; description?: string; memo?: string; tags?: string[]; phoneNumbers?: { [key: string]: IR8Phone; }; addresses?: { [key: string]: IR8Address; }; language?: string; currency: string; } export declare function ClientInitialValue(): Partial; /** Default Validation Client * Throw Error if fail */ export declare function CheckClientIsValid(Obj: Partial | Partial): void; /** Default Validation Client * return Error message if failure */ export declare function ClientIsValid(Obj: Partial | Partial): string; /** Serialize IR8Client to Firestore JSON */ export declare function Client2JSON(Obj: Partial): IR8ClientFS; /** Serialize Firestore JSON to IR8Client. json can be undefined */ export declare function JSON2Client(json: Partial | undefined, target: IR8Client): void; /** New Client from Firestore JSON */ export declare function JSONAsClient(json?: Partial): IR8Client;