export type ImageCategory = 'signature' | 'logo' | 'formula' | 'image';

export type DictionaryActions = 'add' | 'approve' | 'remove' | 'decline' | 'request-remove' | 'suggest' | 'undo';

export type ManualRedactionActions =
    | 'add'
    | 'approve'
    | 'remove'
    | 'remove-hint'
    | 'change-legal-basis'
    | 'decline'
    | 'request-remove'
    | 'request-remove-hint'
    | 'request-change-legal-basis'
    | 'recategorize-image'
    | 'request-image-recategorization'
    | 'suggest'
    | 'undo'
    | 'force-redaction'
    | 'force-hint'
    | 'request-force-redaction'
    | 'request-force-hint'
    | 'change-type';

export const AnnotationIconTypes = {
    square: 'square',
    rhombus: 'rhombus',
    circle: 'circle',
    hexagon: 'hexagon',
    none: 'none',
} as const;

export type AnnotationIconType = keyof typeof AnnotationIconTypes;

export const AnnotationShapeMap: Record<string, AnnotationIconType> = {
    analysis: AnnotationIconTypes.square,
    hint: AnnotationIconTypes.circle,
    redaction: AnnotationIconTypes.square,
    suggestion: AnnotationIconTypes.rhombus,
    updated: AnnotationIconTypes.square,
    image: AnnotationIconTypes.square,
    none: AnnotationIconTypes.none,
};
