import { IR8Category } from './IR8Category'; import { IR8Group } from './IR8Group'; import { IR8Article } from './IR8Article'; import { IR8ModifiersTmpl } from './IR8ModifiersTmpl'; import { IR8Tariff } from './IR8Tariff'; import { IR8ModePay } from './IR8ModePay'; import { IR8CartePage } from './IR8CartePage'; import { IR8CarteBtn } from './IR8CarteBtn'; /** FireStore Database Carte JSON Format. Converted to/from IR8Carte. */ export interface IR8CarteFS { categories?: Array; groupes?: Array; articles?: Array; modifiersTmpls?: Array; tariffs?: Array; modepays?: Array; pages?: Array; btns?: Array; description?: string; configs?: { [key: string]: any; }; } /** * La Carte Pointage contain Articles,Categories, .... * - Singleton Doc, Firestore.docId === 'carte' * * objClass: 205 * firestore.path: $etab/data/carte */ export interface IR8Carte { categories?: { [guid: string]: IR8Category; }; groupes?: { [guid: string]: IR8Group; }; articles?: { [guid: string]: IR8Article; }; modifiersTmpls?: { [name: string]: IR8ModifiersTmpl; }; tariffs?: { [tariff: number]: IR8Tariff; }; modepays?: { [guid: string]: IR8ModePay; }; pages?: { [guid: string]: IR8CartePage; }; btns?: { [guid: string]: IR8CarteBtn; }; description?: string; configs?: { [key: string]: any; }; } export declare function CarteInitialValue(): Partial; /** Default Validation Carte * Throw Error if fail */ export declare function CheckCarteIsValid(Obj: Partial | Partial): void; /** Default Validation Carte * return Error message if failure */ export declare function CarteIsValid(Obj: Partial | Partial): string; /** Serialize IR8Carte to Firestore JSON */ export declare function Carte2JSON(Obj: Partial): IR8CarteFS; /** Serialize Firestore JSON to IR8Carte. json can be undefined */ export declare function JSON2Carte(json: Partial | undefined, target: IR8Carte): void; /** New Carte from Firestore JSON */ export declare function JSONAsCarte(json?: Partial): IR8Carte;