/**
 * Generated by orval v8.23.0 🍺
 * Do not edit manually.
 * Api
 * API specification
 * OpenAPI spec version: 0.1.0
 */
export interface HealthStatus {
  status: string;
}

export interface TrendPoint {
  month: string;
  activities: number;
  households: number;
}

export interface DashboardSummary {
  totalActivities: number;
  householdsReached: number;
  peopleReached: number;
  activePartners: number;
  lastUpdated: string;
  governorates: string[];
  statuses: string[];
  partners: string[];
  sources: string[];
  activityTrend: TrendPoint[];
}

export interface Attribute {
  label: string;
  value: string;
}

export interface ShelterActivity {
  id: number;
  title: string;
  partner: string;
  governorate: string;
  district: string;
  status: string;
  source: string;
  activityType: string;
  latitude: number;
  longitude: number;
  households: number;
  people: number;
  updatedAt: string;
  details?: Attribute[];
}

export interface Layer {
  id: number;
  name: string;
  description: string;
  sourceType: string;
  visibility: boolean;
  priority: number;
  featureCount: number;
  updatedAt: string;
  color: string;
  geometryType: string;
  syncStatus?: string;
}

export interface LayerInput {
  name: string;
  description: string;
  sourceType: string;
  geometryType: string;
  color?: string;
}

export interface LayerUpdate {
  name?: string;
  description?: string;
  visibility?: boolean;
  priority?: number;
  color?: string;
}

export interface AuditEvent {
  id: number;
  action: string;
  subject: string;
  actor: string;
  timestamp: string;
}

export interface WorkspaceUser {
  id: number;
  name: string;
  email: string;
  role: string;
  status: string;
  lastLogin: string;
}

export type GovernorateParameter = string;

export type StatusParameter = string;

export type PartnerParameter = string;

export type SourceParameter = string;

export type SearchParameter = string;

export type GetDashboardSummaryParams = {
governorate?: GovernorateParameter;
status?: StatusParameter;
partner?: PartnerParameter;
source?: SourceParameter;
search?: SearchParameter;
};

export type ListActivitiesParams = {
governorate?: GovernorateParameter;
status?: StatusParameter;
partner?: PartnerParameter;
source?: SourceParameter;
search?: SearchParameter;
};

