/** Interface qui représente une colonne de grille */ export interface IDejaGridColumn { /** Titre de la colonne */ label?: string; /** Nom unique identifiant de la colonne */ name: string; /** Internal usage */ w?: number; /** Largeur et unité de la colonne. L'unité peut être en % ou en px (Exemple: 100px, 10%) */ width?: string; /** largeur minimum en pixels à laquelle la colonne peut réduire sa taille */ minWidth?: number; /** Indique si les cellules de la colonnes utilisent un template de cellule */ useCellTemplate?: boolean; /** Indique si la colonne peut-être déplacée vers un autre composant */ draggable?: boolean; /** Indique si la colonne est en déplacement (Usage Interne) */ dragged?: boolean; /** Indique si la colonne peut-être redimensionée */ sizeable?: boolean; /** Indique si la colonne est déplacable parmis les autres colonnes */ sortable?: boolean; /** Indique si la colonne est en déplacement (Usage Interne) */ sorting?: boolean; /** Indique si la colonne est masquée si la place necessaire n'est plus suffisante. * Cette valeur peut-être true, false ou un nombre * Si true, la colonne est masquée * Si un nonbre est spécifiée, les colonnes avec un nombre inférieur seront masquées avant. */ responsive?: boolean | number; /** Indique si la colonne est groupable */ groupable?: boolean; /** Indique le champ utilisé pour le regroupement de la colonne */ groupByField?: ((model: unknown) => string) | string; /** Indique le champ utilisé pour le titre des groupes ajoutés lors du regroupement */ groupTextField?: ((model: unknown) => string) | string; /** Indique si la colonne est la colonne courante */ isCurrent?: boolean; } export interface IDejaGridColumnEvent { column: IDejaGridColumn; index: number; originalEvent: MouseEvent; } export interface IDejaGridColumnSizeEvent { column: IDejaGridColumn; offsetWidth: number; originalEvent: MouseEvent; } export interface IDejaGridColumnLayoutEvent extends IDejaGridColumnEvent { target?: IDejaGridColumn; targetIndex?: number; }