export enum PageSize {
  LETTER = 'LETTER',
  A4 = 'A4',
}

export interface PdfSettings {
  id: string;

  // Branding
  organizationName: string;
  logoUrl: string | null;
  accentColor: string;
  tagline: string | null;

  // Contact Info
  contactEmail: string;
  contactPhone: string;
  secondaryContactName: string | null;
  secondaryContactPhone: string | null;
  contactLabel: string;

  // Document Options
  showDraftWatermark: boolean;
  showConfidentialWatermark: boolean;
  showTimestamp: boolean;
  showAppUrl: boolean;
  pageSize: PageSize;
  timezone: string;

  // Content Toggles
  showFlightInfo: boolean;
  showDriverNames: boolean;
  showVehicleNames: boolean;
  showVipNotes: boolean;
  showEventDescriptions: boolean;

  // Custom Text
  headerMessage: string | null;
  footerMessage: string | null;

  createdAt: string;
  updatedAt: string;
}

export interface UpdatePdfSettingsDto {
  // Branding
  organizationName?: string;
  accentColor?: string;
  tagline?: string;

  // Contact Info
  contactEmail?: string;
  contactPhone?: string;
  secondaryContactName?: string;
  secondaryContactPhone?: string;
  contactLabel?: string;

  // Document Options
  showDraftWatermark?: boolean;
  showConfidentialWatermark?: boolean;
  showTimestamp?: boolean;
  showAppUrl?: boolean;
  pageSize?: PageSize;
  timezone?: string;

  // Content Toggles
  showFlightInfo?: boolean;
  showDriverNames?: boolean;
  showVehicleNames?: boolean;
  showVipNotes?: boolean;
  showEventDescriptions?: boolean;

  // Custom Text
  headerMessage?: string;
  footerMessage?: string;
}
