mirror of
https://github.com/complexcaresolutions/payload-contracts.git
synced 2026-03-17 18:43:48 +00:00
fix: remove tsx from optionalDependencies to fix Plesk deploys
tsx's esbuild postinstall fails in Plesk's nodenv sub-shell context because npm git dep preparation spawns `sh -c node install.js` which doesn't inherit the PATH set in deploy actions. Fix: Remove tsx entirely (only needed on sv-payload for `pnpm extract`, where it's available via npx). Also updates extracted types. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
d4e1ef1035
commit
381bc291a0
3 changed files with 408 additions and 18 deletions
|
|
@ -34,7 +34,7 @@
|
||||||
"build": "tsc",
|
"build": "tsc",
|
||||||
"dev": "tsc --watch",
|
"dev": "tsc --watch",
|
||||||
"typecheck": "tsc --noEmit",
|
"typecheck": "tsc --noEmit",
|
||||||
"extract": "tsx scripts/extract-types.ts",
|
"extract": "npx tsx scripts/extract-types.ts",
|
||||||
"wo:create": "bash scripts/create-work-order.sh",
|
"wo:create": "bash scripts/create-work-order.sh",
|
||||||
"wo:execute": "bash scripts/execute-work-order.sh",
|
"wo:execute": "bash scripts/execute-work-order.sh",
|
||||||
"preinstall": "true",
|
"preinstall": "true",
|
||||||
|
|
@ -52,9 +52,6 @@
|
||||||
"@types/react": "^19.0.0",
|
"@types/react": "^19.0.0",
|
||||||
"typescript": "^5.7.0"
|
"typescript": "^5.7.0"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
|
||||||
"tsx": "^4.19.0"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"react": "^19.0.0"
|
"react": "^19.0.0"
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,10 @@ import type {
|
||||||
CookieConfiguration,
|
CookieConfiguration,
|
||||||
CookieInventory,
|
CookieInventory,
|
||||||
PrivacyPolicySetting,
|
PrivacyPolicySetting,
|
||||||
|
MonitoringSnapshot,
|
||||||
|
MonitoringLog,
|
||||||
|
MonitoringAlertRule,
|
||||||
|
MonitoringAlertHistory,
|
||||||
SiteSetting,
|
SiteSetting,
|
||||||
Navigation,
|
Navigation,
|
||||||
Form,
|
Form,
|
||||||
|
|
@ -82,6 +86,10 @@ export type {
|
||||||
CookieConfiguration,
|
CookieConfiguration,
|
||||||
CookieInventory,
|
CookieInventory,
|
||||||
PrivacyPolicySetting,
|
PrivacyPolicySetting,
|
||||||
|
MonitoringSnapshot,
|
||||||
|
MonitoringLog,
|
||||||
|
MonitoringAlertRule,
|
||||||
|
MonitoringAlertHistory,
|
||||||
SiteSetting,
|
SiteSetting,
|
||||||
Navigation,
|
Navigation,
|
||||||
Form,
|
Form,
|
||||||
|
|
@ -127,6 +135,10 @@ export interface CollectionTypeMap {
|
||||||
'cookie-configurations': CookieConfiguration;
|
'cookie-configurations': CookieConfiguration;
|
||||||
'cookie-inventory': CookieInventory;
|
'cookie-inventory': CookieInventory;
|
||||||
'privacy-policy-settings': PrivacyPolicySetting;
|
'privacy-policy-settings': PrivacyPolicySetting;
|
||||||
|
'monitoring-snapshots': MonitoringSnapshot;
|
||||||
|
'monitoring-logs': MonitoringLog;
|
||||||
|
'monitoring-alert-rules': MonitoringAlertRule;
|
||||||
|
'monitoring-alert-history': MonitoringAlertHistory;
|
||||||
'site-settings': SiteSetting;
|
'site-settings': SiteSetting;
|
||||||
'navigations': Navigation;
|
'navigations': Navigation;
|
||||||
'forms': Form;
|
'forms': Form;
|
||||||
|
|
|
||||||
|
|
@ -125,6 +125,10 @@ export interface Config {
|
||||||
'privacy-policy-settings': PrivacyPolicySetting;
|
'privacy-policy-settings': PrivacyPolicySetting;
|
||||||
'email-logs': EmailLog;
|
'email-logs': EmailLog;
|
||||||
'audit-logs': AuditLog;
|
'audit-logs': AuditLog;
|
||||||
|
'monitoring-snapshots': MonitoringSnapshot;
|
||||||
|
'monitoring-logs': MonitoringLog;
|
||||||
|
'monitoring-alert-rules': MonitoringAlertRule;
|
||||||
|
'monitoring-alert-history': MonitoringAlertHistory;
|
||||||
'site-settings': SiteSetting;
|
'site-settings': SiteSetting;
|
||||||
navigations: Navigation;
|
navigations: Navigation;
|
||||||
forms: Form;
|
forms: Form;
|
||||||
|
|
@ -191,6 +195,10 @@ export interface Config {
|
||||||
'privacy-policy-settings': PrivacyPolicySettingsSelect<false> | PrivacyPolicySettingsSelect<true>;
|
'privacy-policy-settings': PrivacyPolicySettingsSelect<false> | PrivacyPolicySettingsSelect<true>;
|
||||||
'email-logs': EmailLogsSelect<false> | EmailLogsSelect<true>;
|
'email-logs': EmailLogsSelect<false> | EmailLogsSelect<true>;
|
||||||
'audit-logs': AuditLogsSelect<false> | AuditLogsSelect<true>;
|
'audit-logs': AuditLogsSelect<false> | AuditLogsSelect<true>;
|
||||||
|
'monitoring-snapshots': MonitoringSnapshotsSelect<false> | MonitoringSnapshotsSelect<true>;
|
||||||
|
'monitoring-logs': MonitoringLogsSelect<false> | MonitoringLogsSelect<true>;
|
||||||
|
'monitoring-alert-rules': MonitoringAlertRulesSelect<false> | MonitoringAlertRulesSelect<true>;
|
||||||
|
'monitoring-alert-history': MonitoringAlertHistorySelect<false> | MonitoringAlertHistorySelect<true>;
|
||||||
'site-settings': SiteSettingsSelect<false> | SiteSettingsSelect<true>;
|
'site-settings': SiteSettingsSelect<false> | SiteSettingsSelect<true>;
|
||||||
navigations: NavigationsSelect<false> | NavigationsSelect<true>;
|
navigations: NavigationsSelect<false> | NavigationsSelect<true>;
|
||||||
forms: FormsSelect<false> | FormsSelect<true>;
|
forms: FormsSelect<false> | FormsSelect<true>;
|
||||||
|
|
@ -310,6 +318,10 @@ export interface YoutubeChannel {
|
||||||
language: 'de' | 'en';
|
language: 'de' | 'en';
|
||||||
category: 'lifestyle' | 'corporate' | 'b2b';
|
category: 'lifestyle' | 'corporate' | 'b2b';
|
||||||
status: 'active' | 'planned' | 'paused' | 'archived';
|
status: 'active' | 'planned' | 'paused' | 'archived';
|
||||||
|
/**
|
||||||
|
* Profil-Thumbnail URL von YouTube (automatisch befüllt)
|
||||||
|
*/
|
||||||
|
channelThumbnailUrl?: string | null;
|
||||||
branding?: {
|
branding?: {
|
||||||
/**
|
/**
|
||||||
* z.B. #1278B3
|
* z.B. #1278B3
|
||||||
|
|
@ -494,7 +506,7 @@ export interface Tenant {
|
||||||
/**
|
/**
|
||||||
* Hostname ohne Protokoll (z.B. smtp.gmail.com)
|
* Hostname ohne Protokoll (z.B. smtp.gmail.com)
|
||||||
*/
|
*/
|
||||||
host: string;
|
host?: string | null;
|
||||||
/**
|
/**
|
||||||
* 587 (STARTTLS) oder 465 (SSL)
|
* 587 (STARTTLS) oder 465 (SSL)
|
||||||
*/
|
*/
|
||||||
|
|
@ -506,7 +518,7 @@ export interface Tenant {
|
||||||
/**
|
/**
|
||||||
* Meist die E-Mail-Adresse
|
* Meist die E-Mail-Adresse
|
||||||
*/
|
*/
|
||||||
user: string;
|
user?: string | null;
|
||||||
/**
|
/**
|
||||||
* Leer lassen um bestehendes Passwort zu behalten
|
* Leer lassen um bestehendes Passwort zu behalten
|
||||||
*/
|
*/
|
||||||
|
|
@ -528,11 +540,6 @@ export interface Page {
|
||||||
* URL-Pfad (z.B. "ueber-uns" / "about-us")
|
* URL-Pfad (z.B. "ueber-uns" / "about-us")
|
||||||
*/
|
*/
|
||||||
slug: string;
|
slug: string;
|
||||||
hero?: {
|
|
||||||
image?: (number | null) | Media;
|
|
||||||
headline?: string | null;
|
|
||||||
subline?: string | null;
|
|
||||||
};
|
|
||||||
layout?:
|
layout?:
|
||||||
| (
|
| (
|
||||||
| {
|
| {
|
||||||
|
|
@ -797,7 +804,13 @@ export interface Page {
|
||||||
headline?: string | null;
|
headline?: string | null;
|
||||||
cards?:
|
cards?:
|
||||||
| {
|
| {
|
||||||
|
mediaType?: ('none' | 'image' | 'icon') | null;
|
||||||
image?: (number | null) | Media;
|
image?: (number | null) | Media;
|
||||||
|
/**
|
||||||
|
* Lucide Icon-Name (z.B. "heart", "star", "shield-check", "camera")
|
||||||
|
*/
|
||||||
|
icon?: string | null;
|
||||||
|
iconPosition?: ('top' | 'left') | null;
|
||||||
title: string;
|
title: string;
|
||||||
description?: string | null;
|
description?: string | null;
|
||||||
link?: string | null;
|
link?: string | null;
|
||||||
|
|
@ -6381,6 +6394,17 @@ export interface YoutubeContent {
|
||||||
subscribersGained?: number | null;
|
subscribersGained?: number | null;
|
||||||
lastSyncedAt?: string | null;
|
lastSyncedAt?: string | null;
|
||||||
};
|
};
|
||||||
|
/**
|
||||||
|
* Für ROI-Berechnung (manuell pflegen)
|
||||||
|
*/
|
||||||
|
costs?: {
|
||||||
|
estimatedProductionHours?: number | null;
|
||||||
|
estimatedProductionCost?: number | null;
|
||||||
|
/**
|
||||||
|
* AdSense + Sponsoring + Affiliate
|
||||||
|
*/
|
||||||
|
estimatedRevenue?: number | null;
|
||||||
|
};
|
||||||
/**
|
/**
|
||||||
* Nur für das Team sichtbar
|
* Nur für das Team sichtbar
|
||||||
*/
|
*/
|
||||||
|
|
@ -7422,6 +7446,232 @@ export interface AuditLog {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* Historische System-Metriken für Trend-Charts
|
||||||
|
*
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-snapshots".
|
||||||
|
*/
|
||||||
|
export interface MonitoringSnapshot {
|
||||||
|
id: number;
|
||||||
|
timestamp: string;
|
||||||
|
/**
|
||||||
|
* System-Ressourcen (CPU, RAM, Disk)
|
||||||
|
*/
|
||||||
|
system?: {
|
||||||
|
cpuUsagePercent?: number | null;
|
||||||
|
memoryUsedMB?: number | null;
|
||||||
|
memoryTotalMB?: number | null;
|
||||||
|
memoryUsagePercent?: number | null;
|
||||||
|
diskUsedGB?: number | null;
|
||||||
|
diskTotalGB?: number | null;
|
||||||
|
diskUsagePercent?: number | null;
|
||||||
|
loadAvg1?: number | null;
|
||||||
|
loadAvg5?: number | null;
|
||||||
|
/**
|
||||||
|
* Uptime in Sekunden
|
||||||
|
*/
|
||||||
|
uptime?: number | null;
|
||||||
|
};
|
||||||
|
/**
|
||||||
|
* Service-Status (PM2-Prozesse, Datenbank, Cache)
|
||||||
|
*/
|
||||||
|
services?: {
|
||||||
|
payload?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
queueWorker?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
postgresql?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
pgbouncer?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
redis?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
};
|
||||||
|
/**
|
||||||
|
* Externe Services (SMTP, OAuth, Cron)
|
||||||
|
*/
|
||||||
|
external?: {
|
||||||
|
smtp?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
metaOAuth?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
youtubeOAuth?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
cronJobs?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
};
|
||||||
|
/**
|
||||||
|
* Performance-Metriken
|
||||||
|
*/
|
||||||
|
performance?: {
|
||||||
|
avgResponseTimeMs?: number | null;
|
||||||
|
p95ResponseTimeMs?: number | null;
|
||||||
|
p99ResponseTimeMs?: number | null;
|
||||||
|
errorRate?: number | null;
|
||||||
|
requestsPerMinute?: number | null;
|
||||||
|
};
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Structured Logs für Business-Events
|
||||||
|
*
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-logs".
|
||||||
|
*/
|
||||||
|
export interface MonitoringLog {
|
||||||
|
id: number;
|
||||||
|
level: 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
||||||
|
source: 'payload' | 'queue-worker' | 'cron' | 'email' | 'oauth' | 'sync';
|
||||||
|
message: string;
|
||||||
|
/**
|
||||||
|
* Strukturierte Metadaten
|
||||||
|
*/
|
||||||
|
context?:
|
||||||
|
| {
|
||||||
|
[k: string]: unknown;
|
||||||
|
}
|
||||||
|
| unknown[]
|
||||||
|
| string
|
||||||
|
| number
|
||||||
|
| boolean
|
||||||
|
| null;
|
||||||
|
/**
|
||||||
|
* Korrelations-ID
|
||||||
|
*/
|
||||||
|
requestId?: string | null;
|
||||||
|
userId?: (number | null) | User;
|
||||||
|
tenant?: (number | null) | Tenant;
|
||||||
|
/**
|
||||||
|
* Dauer in ms
|
||||||
|
*/
|
||||||
|
duration?: number | null;
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Konfigurierbare Alert-Regeln
|
||||||
|
*
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-alert-rules".
|
||||||
|
*/
|
||||||
|
export interface MonitoringAlertRule {
|
||||||
|
id: number;
|
||||||
|
name: string;
|
||||||
|
/**
|
||||||
|
* z.B. system.cpuUsagePercent, services.redis.memoryUsedMB
|
||||||
|
*/
|
||||||
|
metric: string;
|
||||||
|
condition: 'gt' | 'lt' | 'eq' | 'gte' | 'lte';
|
||||||
|
threshold: number;
|
||||||
|
severity: 'warning' | 'error' | 'critical';
|
||||||
|
channels: ('email' | 'slack' | 'discord')[];
|
||||||
|
recipients?: {
|
||||||
|
emails?:
|
||||||
|
| {
|
||||||
|
email: string;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
|
slackWebhook?: string | null;
|
||||||
|
discordWebhook?: string | null;
|
||||||
|
};
|
||||||
|
/**
|
||||||
|
* Minimaler Abstand zwischen gleichen Alerts
|
||||||
|
*/
|
||||||
|
cooldownMinutes?: number | null;
|
||||||
|
enabled?: boolean | null;
|
||||||
|
/**
|
||||||
|
* Optional: Tenant-spezifische Regel
|
||||||
|
*/
|
||||||
|
tenant?: (number | null) | Tenant;
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Alert-Log (WORM - Write Once)
|
||||||
|
*
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-alert-history".
|
||||||
|
*/
|
||||||
|
export interface MonitoringAlertHistory {
|
||||||
|
id: number;
|
||||||
|
rule?: (number | null) | MonitoringAlertRule;
|
||||||
|
metric: string;
|
||||||
|
value: number;
|
||||||
|
threshold: number;
|
||||||
|
severity: 'warning' | 'error' | 'critical';
|
||||||
|
message: string;
|
||||||
|
channelsSent?: ('email' | 'slack' | 'discord')[] | null;
|
||||||
|
resolvedAt?: string | null;
|
||||||
|
acknowledgedBy?: (number | null) | User;
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Allgemeine Website-Einstellungen pro Tenant
|
* Allgemeine Website-Einstellungen pro Tenant
|
||||||
*
|
*
|
||||||
|
|
@ -7804,6 +8054,22 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'audit-logs';
|
relationTo: 'audit-logs';
|
||||||
value: number | AuditLog;
|
value: number | AuditLog;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'monitoring-snapshots';
|
||||||
|
value: number | MonitoringSnapshot;
|
||||||
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'monitoring-logs';
|
||||||
|
value: number | MonitoringLog;
|
||||||
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'monitoring-alert-rules';
|
||||||
|
value: number | MonitoringAlertRule;
|
||||||
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'monitoring-alert-history';
|
||||||
|
value: number | MonitoringAlertHistory;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'site-settings';
|
relationTo: 'site-settings';
|
||||||
value: number | SiteSetting;
|
value: number | SiteSetting;
|
||||||
|
|
@ -8065,13 +8331,6 @@ export interface PagesSelect<T extends boolean = true> {
|
||||||
tenant?: T;
|
tenant?: T;
|
||||||
title?: T;
|
title?: T;
|
||||||
slug?: T;
|
slug?: T;
|
||||||
hero?:
|
|
||||||
| T
|
|
||||||
| {
|
|
||||||
image?: T;
|
|
||||||
headline?: T;
|
|
||||||
subline?: T;
|
|
||||||
};
|
|
||||||
layout?:
|
layout?:
|
||||||
| T
|
| T
|
||||||
| {
|
| {
|
||||||
|
|
@ -8297,7 +8556,10 @@ export interface PagesSelect<T extends boolean = true> {
|
||||||
cards?:
|
cards?:
|
||||||
| T
|
| T
|
||||||
| {
|
| {
|
||||||
|
mediaType?: T;
|
||||||
image?: T;
|
image?: T;
|
||||||
|
icon?: T;
|
||||||
|
iconPosition?: T;
|
||||||
title?: T;
|
title?: T;
|
||||||
description?: T;
|
description?: T;
|
||||||
link?: T;
|
link?: T;
|
||||||
|
|
@ -11464,6 +11726,7 @@ export interface YoutubeChannelsSelect<T extends boolean = true> {
|
||||||
language?: T;
|
language?: T;
|
||||||
category?: T;
|
category?: T;
|
||||||
status?: T;
|
status?: T;
|
||||||
|
channelThumbnailUrl?: T;
|
||||||
branding?:
|
branding?:
|
||||||
| T
|
| T
|
||||||
| {
|
| {
|
||||||
|
|
@ -11631,6 +11894,13 @@ export interface YoutubeContentSelect<T extends boolean = true> {
|
||||||
subscribersGained?: T;
|
subscribersGained?: T;
|
||||||
lastSyncedAt?: T;
|
lastSyncedAt?: T;
|
||||||
};
|
};
|
||||||
|
costs?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
estimatedProductionHours?: T;
|
||||||
|
estimatedProductionCost?: T;
|
||||||
|
estimatedRevenue?: T;
|
||||||
|
};
|
||||||
internalNotes?: T;
|
internalNotes?: T;
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
|
|
@ -12278,6 +12548,117 @@ export interface AuditLogsSelect<T extends boolean = true> {
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-snapshots_select".
|
||||||
|
*/
|
||||||
|
export interface MonitoringSnapshotsSelect<T extends boolean = true> {
|
||||||
|
timestamp?: T;
|
||||||
|
system?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
cpuUsagePercent?: T;
|
||||||
|
memoryUsedMB?: T;
|
||||||
|
memoryTotalMB?: T;
|
||||||
|
memoryUsagePercent?: T;
|
||||||
|
diskUsedGB?: T;
|
||||||
|
diskTotalGB?: T;
|
||||||
|
diskUsagePercent?: T;
|
||||||
|
loadAvg1?: T;
|
||||||
|
loadAvg5?: T;
|
||||||
|
uptime?: T;
|
||||||
|
};
|
||||||
|
services?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
payload?: T;
|
||||||
|
queueWorker?: T;
|
||||||
|
postgresql?: T;
|
||||||
|
pgbouncer?: T;
|
||||||
|
redis?: T;
|
||||||
|
};
|
||||||
|
external?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
smtp?: T;
|
||||||
|
metaOAuth?: T;
|
||||||
|
youtubeOAuth?: T;
|
||||||
|
cronJobs?: T;
|
||||||
|
};
|
||||||
|
performance?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
avgResponseTimeMs?: T;
|
||||||
|
p95ResponseTimeMs?: T;
|
||||||
|
p99ResponseTimeMs?: T;
|
||||||
|
errorRate?: T;
|
||||||
|
requestsPerMinute?: T;
|
||||||
|
};
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-logs_select".
|
||||||
|
*/
|
||||||
|
export interface MonitoringLogsSelect<T extends boolean = true> {
|
||||||
|
level?: T;
|
||||||
|
source?: T;
|
||||||
|
message?: T;
|
||||||
|
context?: T;
|
||||||
|
requestId?: T;
|
||||||
|
userId?: T;
|
||||||
|
tenant?: T;
|
||||||
|
duration?: T;
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-alert-rules_select".
|
||||||
|
*/
|
||||||
|
export interface MonitoringAlertRulesSelect<T extends boolean = true> {
|
||||||
|
name?: T;
|
||||||
|
metric?: T;
|
||||||
|
condition?: T;
|
||||||
|
threshold?: T;
|
||||||
|
severity?: T;
|
||||||
|
channels?: T;
|
||||||
|
recipients?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
emails?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
email?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
|
slackWebhook?: T;
|
||||||
|
discordWebhook?: T;
|
||||||
|
};
|
||||||
|
cooldownMinutes?: T;
|
||||||
|
enabled?: T;
|
||||||
|
tenant?: T;
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "monitoring-alert-history_select".
|
||||||
|
*/
|
||||||
|
export interface MonitoringAlertHistorySelect<T extends boolean = true> {
|
||||||
|
rule?: T;
|
||||||
|
metric?: T;
|
||||||
|
value?: T;
|
||||||
|
threshold?: T;
|
||||||
|
severity?: T;
|
||||||
|
message?: T;
|
||||||
|
channelsSent?: T;
|
||||||
|
resolvedAt?: T;
|
||||||
|
acknowledgedBy?: T;
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "site-settings_select".
|
* via the `definition` "site-settings_select".
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue