import type { KycApplicantInput, KycProvider } from "@/server/providers/kyc/types";

export class LocalKycProvider implements KycProvider {
  key = "local";

  async createApplicant(input: KycApplicantInput) {
    return { providerRef: `local-kyc-${input.userId}`, status: "PENDING" as const };
  }

  async screenApplicant(input: KycApplicantInput) {
    const elevatedCountries = new Set(["AF", "IR", "KP", "SY"]);
    return {
      amlScore: elevatedCountries.has(input.country) ? 78 : 12,
      pepMatch: false,
      sanctionsMatch: false,
      countryRisk: elevatedCountries.has(input.country) ? "high" : "standard"
    };
  }

  async healthCheck() {
    return { ok: true, latencyMs: 1, message: "local KYC provider ready for dev/staging" };
  }
}
