Mirror of https://github.com/roostorg/coop
github.com/roostorg/coop
1import { type GeneratedAlways } from 'kysely';
2
3import { type NonEmptyArray } from '../../utils/typescript-types.js';
4import {
5 type NcmecAdditionalFile,
6 type NcmecMediaReport,
7 type NcmecMessagesReport,
8} from './ncmecReporting.js';
9
10export type NcmecReportingServicePg = {
11 'ncmec_reporting.ncmec_org_settings': {
12 org_id: string;
13 username: string;
14 password: string;
15 contact_email?: string;
16 more_info_url?: string;
17 company_template?: string;
18 legal_url?: string;
19 ncmec_preservation_endpoint?: string;
20 ncmec_additional_info_endpoint?: string;
21 default_ncmec_queue_id?: string | null;
22 default_internet_detail_type?: string | null;
23 terms_of_service?: string | null;
24 contact_person_email?: string | null;
25 contact_person_first_name?: string | null;
26 contact_person_last_name?: string | null;
27 contact_person_phone?: string | null;
28 created_at: GeneratedAlways<Date>;
29 updated_at: GeneratedAlways<Date>;
30 } & (
31 | {
32 actions_to_run_upon_report_creation: NonEmptyArray<string>;
33 policies_applied_to_actions_run_on_report_creation: NonEmptyArray<string>;
34 }
35 | {
36 actions_to_run_upon_report_creation: null;
37 policies_applied_to_actions_run_on_report_creation: null;
38 }
39 );
40 'ncmec_reporting.ncmec_reports': {
41 org_id: string;
42 report_id: string;
43 user_id: string;
44 user_item_type_id: string;
45 reported_media: NonEmptyArray<NcmecMediaReport>;
46 reviewer_id?: string;
47 created_at: GeneratedAlways<Date>;
48 updated_at: GeneratedAlways<Date>;
49 report_xml: string;
50 additional_files: Array<NcmecAdditionalFile> | null;
51 reported_messages: Array<NcmecMessagesReport> | null;
52 incident_type?: string;
53 // This value is undefined for the rows where we aren't sure if it's test or
54 // not, before the column was added
55 is_test?: boolean;
56 };
57 'ncmec_reporting.ncmec_reports_errors': {
58 job_id: string;
59 user_id: string;
60 user_type_id: string;
61 status: 'RETRYABLE_ERROR' | 'PERMANENT_ERROR';
62 retry_count: number;
63 last_error: string;
64 };
65};