import { getMyinfoConfig } from "@/lib/myinfo-config";
export const runtime = "nodejs";
export async function GET() {
  try {
    const config = getMyinfoConfig();
    if (!config)
      return Response.json(
        { keys: [] },
        { headers: { "Cache-Control": "no-store" } },
      );
    const keys = [config.signing, config.encryption].map((key, index) => ({
      kty: key.kty,
      crv: key.crv,
      kid: key.kid,
      x: key.x,
      y: key.y,
      use: index ? "enc" : "sig",
      alg: index ? "ECDH-ES+A256KW" : "ES256",
    }));
    return Response.json(
      { keys },
      { headers: { "Cache-Control": "public, max-age=300" } },
    );
  } catch {
    return Response.json(
      { keys: [] },
      { status: 503, headers: { "Cache-Control": "no-store" } },
    );
  }
}
