import { IconDefinition } from '@fortawesome/fontawesome-svg-core'; import { ButtonColour } from '../enum/button-colour/button-colour.enum'; import { ButtonType } from '../enum/button-type/button-type.enum'; /** * @description an interface which defines the properties available in a custom button */ export interface CustomButtonConfig { value: string | IconDefinition; type: ButtonType; colour: ButtonColour; handleClick: (...args: any[]) => void; id: string; testId?: string; outline?: boolean; disabled?: boolean; icon?: IconDefinition; tooltip?: string; printSectionID?: string; } /** * @author Alex Hodson * @description an interface which defines an array of custom button configurations */ export interface CustomButtonConfigItems extends Array { } /** * @author Alex Hodson * @description an interface which defines the properties for a custom button group item */ export interface CustomButtonGroupItem extends CustomButtonConfig { callbackValue: any; }