import { StatusPayload } from '../../commonPayloadTypes/statusPayload'; import { ID } from '../../commonStateTypes/common'; import { ZeniAPIResponse } from '../../responsePayload'; import { AuditSummaryPayload } from '../reviewCompanyView/reviewCompanyPayload'; interface AuditRuleGroupBasePayload { audit_rule_group_id: string; } export interface AuditRuleBypassReasonPayload { added_by_user_id: ID; reason_created_at: string; reason_status: string; reason_to_pass: string; reason_updated_at: string; } export interface AuditRuleGroupPayload extends AuditRuleGroupBasePayload { audit_rule_category: string; audit_rule_group_description: string; audit_rules: AuditRulePayload[]; rule_type: string; sequence: number; } export interface AuditRuleGroupsPayload { audit_rule_groups: AuditRuleGroupPayload[]; version: string; } export interface AuditRuleBasePayload { audit_rule_id: string; } export interface AuditRulePayload extends AuditRuleBasePayload { audit_rule_description: string; sequence: number; } export interface AuditReportRulePayload extends AuditRuleBasePayload { entity_ids: string[]; entity_type: string; is_success: boolean; message: string; sequence: number; reasons?: AuditRuleBypassReasonPayload; } export interface AuditRuleGroupReportPayload extends AuditRuleGroupBasePayload { is_success: boolean; message: string; rule_type: string; sequence: number; audit_rules?: AuditReportRulePayload[] | null; } export interface AuditReportGroupPayload { query: AuditReportGroupQueryPayload; report: AuditReportPayload; } export interface AuditReportPayload { audit_month_and_year: string; audit_rules_group_report: AuditRuleGroupReportPayload[]; audit_summary: AuditSummaryPayload; report_id: string; report_title: string; status: StatusPayload; version: string; } export interface AuditReportGroupQueryPayload { action: string; audit_rule_group_ids: string[]; } export interface AuditReportGroupQueryRequestPayload { action: string; audit_rule_group_ids: string[]; } export interface RuleResponsePayload { audit_month_and_year: string; audit_rule_group_id: string; audit_rule_id: string; create_time: string; entity_ids: string[]; entity_type: string; is_deleted: boolean; is_success: boolean; last_refresh_attempt_time: string; last_refresh_success_time: string; message: string; reasons: AuditRuleBypassReasonPayload; sequence: number; update_time: string; } export type AuditReportGroupResponse = ZeniAPIResponse; export type AuditRuleGroupsResponse = ZeniAPIResponse; export type SaveReasonForAuditRuleResponse = ZeniAPIResponse; export {};