import type { AuditEventDetailDTO, AuditEventId, AuditEventListDTO, AuditEventPageDTO, AuditPageQuery } from '#/api/x/audit/events';
|
import type { AuditFieldDiff } from '#/components/FormExtraPanel/auditDiff';
|
|
export const AUDIT_QUERY_PERMISSION = 'audit.query';
|
export const AUDIT_DETAIL_PERMISSION = 'audit.detail';
|
|
export interface AuditOperation extends Omit<AuditEventListDTO, 'diffCount' | 'subEvents'> {
|
correlationKey: string;
|
diffCount: number;
|
eventIds: AuditEventId[];
|
layers: number[];
|
sourceSummary: string;
|
subEvents: AuditEventListDTO[];
|
}
|
|
export interface AuditEventDetail extends Omit<AuditEventDetailDTO, 'fieldDiffList'> {
|
fieldDiffList: AuditFieldDiff[];
|
fieldDiffParseError: boolean;
|
}
|
|
export interface AuditOperationPage extends Omit<AuditEventPageDTO, 'list'> {
|
list: AuditOperation[];
|
}
|
|
export interface AuditOperationQuery {
|
detail(eventId: AuditEventId): Promise<AuditEventDetail>;
|
page(query: AuditPageQuery): Promise<AuditOperationPage>;
|
timeline(targetId: string): Promise<AuditOperation[]>;
|
}
|
|
export type { AuditEventId, AuditEventListDTO, AuditPageQuery };
|