import { Entity, PrimaryGeneratedColumn, Column } from 'typeorm'; export interface FilterCondition { field: string; // 'document_type' | 'correspondent' | 'owner' | 'tag' | 'custom_field_' | 'title' | 'archive_serial_number' operator: string; // 'equals' | 'not_equals' | 'contains' | 'not_contains' | 'is_set' | 'is_not_set' value: any; } export interface FilterGroup { combinator: 'AND' | 'OR'; rules: (FilterCondition | FilterGroup)[]; } @Entity('Postprocessings') export class Postprocessing { @PrimaryGeneratedColumn() Id!: number; @Column({ type: 'varchar', length: 255 }) Name!: string; @Column({ type: 'json' }) FilterJson!: FilterGroup; @Column({ type: 'int', default: 0 }) Order!: number; @Column({ type: 'tinyint', default: 0 }) NoFurther!: boolean; @Column({ type: 'tinyint', default: 1 }) IsActive!: boolean; }