export interface FileInfo {
  fileName: string;
  contentType: string;
  size: number;
  originalname: string;
}

export interface TemplateResource {
  id?: string;
  resourceTypeId: string;
  name: {
    am: string;
    en: string;
  };
  description: {
    am: string;
    en: string;
  };
  fileInfo?: FileInfo;
  presigned?: string;
  createdAt?: string;
  updatedAt?: string;
}

export interface ResourceType {
  id: string;
  code: string;
  name: {
    am: string;
    en: string;
  };
  description: {
    am: string;
    en: string;
  };
  createdAt: string;
  updatedAt: string;
}

export interface TemplateResponse {
  count: number;
  items: TemplateResource[];
}

export interface ResourceTypeResponse {
  count: number;
  items: ResourceType[];
}

export type CreateTemplatePayload = Omit<
  TemplateResource,
  "id" | "createdAt" | "updatedAt"
>;
