← Назадexport interface Project {
id: string;
name: string;
description: string;
status: 'up' | 'down' | 'running' | 'stopped' | 'error' | 'healthy';
icon: string;
color: string;
kpis: Record<string, any>;
links?: Record<string, string>;
lastChecked?: string;
}
export interface SystemMetrics {
cpu: {
usage: string;
cores: number;
speed: string;
};
memory: {
total: string;
used: string;
usedPercent: string;
};
disk: Array<{
fs: string;
size: string;
used: string;
usePercent: string;
}>;
uptime: {
formatted: string;
seconds: number;
};
}
export type TaskStatus = 'proposed' | 'approved' | 'done' | 'verified';
export type TaskPriority = 'low' | 'medium' | 'high' | 'critical';
export interface Task {
id: string;
title: string;
description?: string;
priority: TaskPriority;
status: TaskStatus;
category?: string;
tags?: string[];
deadline?: string;
createdAt?: string;
updatedAt?: string;
}
export interface ArchivedTask extends Task {
archivedAt: string;
}
export interface DeployLog {
event: string;
projectId: string;
status: 'success' | 'failure' | 'cancelled' | string;
branch: string;
commit: string;
message: string;
actor: string;
timestamp: string;
}
export interface ChartData {
labels: string[];
values: number[];
}
export interface HealthCheck {
project: string;
status: 'healthy' | 'warning' | 'error';
responseTime: number;
lastCheck: string;
details: Record<string, any>;
}
export interface HealthStatus {
status: string;
timestamp?: string;
checks: HealthCheck[];
message?: string;
}
export interface AffiliateKpi {
offers: {
total: number;
active: number;
paused: number;
testing: number;
list: Array<{
id: number;
name: string;
network: string;
payout: number;
currency: string;
status: string;
}>;
};
campaigns: {
active: number;
list: Array<{
id: number;
offer: string;
traffic: string;
spend: number;
revenue: number;
roi: number;
}>;
};
financials: {
spend: number;
revenue: number;
profit: number;
roi: number;
epc: number;
};
conversions: {
today: number;
week: number;
month: number;
rate: string;
};
trafficSources: Array<{
source: string;
spend: number;
revenue: number;
conversions: number;
}>;
trends: {
spend: number[];
revenue: number[];
conversions: number[];
roi: number[];
};
}