declare  interface TAnnouncement {
  _id: string;
  recipients: TAnnouncementRecipients[];
  title: string;
  content: string;
  file: AnnouncementFile[];
  createdAt: string;
  updatedAt: string;
  site: string;
  createdBy: string;
  noExpiration: boolean;
  startDate: string;
  endDate: string;
  status: TAnnouncementStatus
}

declare interface TAnnouncementFile {
  _id: string;
  name: string;
  preview: boolean;
}

declare type TAnnouncementRecipients = "resident" | "security_agency" | "cleaning_services" | "mechanical_electrical" | "property_management_agency"



declare type TCreateAnnouncementPayload = Pick<TAnnouncement, "recipients" | "file" | "site" | "noExpiration" | "startDate" | "endDate" | "content" | "title">

declare type TAnnouncementStatus = "active" | "expired"