export type ComplaintVerificationMethod = "fayda" | "tin";

export interface VerifiedCitizen {
  fullName: string;
  faydaId: string;
}

export interface VerifiedOrganization {
  organizationName: string;
  tin: string;
  regNo?: string;
  licenseNumber?: string;
  tradeName?: string;
  mainGuid?: string;
}

import type { RegisterWithFaydaResponse } from "@/shared/services/authService";

export interface ComplaintVerificationResult {
  verified: boolean;
  method: ComplaintVerificationMethod;
  citizen?: VerifiedCitizen;
  organization?: VerifiedOrganization;
  verifiedAt: string;
  registration?: RegisterWithFaydaResponse;
}

export interface ComplaintVerificationSession extends ComplaintVerificationResult {
  verified: true;
  method: ComplaintVerificationMethod;
}

export interface FaydaCallbackData {
  code: string;
  state?: string | null;
}

export interface ComplaintFormDraft {
  recipient: string;
  subject: string;
  description: string;
}
