import { z } from "zod";

//#region src/modules/kms/jwk/kty/okp/okpJwk.d.ts
declare const zKmsJwkPublicOkp: z.ZodObject<{
  kty: z.ZodLiteral<"OKP">;
  crv: z.ZodEnum<["X25519", "Ed25519"]>;
  x: z.ZodString;
  d: z.ZodOptional<z.ZodString>;
  kid: z.ZodOptional<z.ZodString>;
  alg: z.ZodOptional<z.ZodString>;
  key_ops: z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"sign">, z.ZodLiteral<"verify">, z.ZodLiteral<"encrypt">, z.ZodLiteral<"decrypt">, z.ZodLiteral<"wrapKey">, z.ZodLiteral<"unwrapKey">, z.ZodLiteral<"deriveKey">, z.ZodLiteral<"deriveBits">]>, z.ZodString]>, "many">, string[], string[]>>;
  use: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"sig">, z.ZodLiteral<"enc">]>, z.ZodString]>>;
  ext: z.ZodOptional<z.ZodBoolean>;
  x5c: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
  x5t: z.ZodOptional<z.ZodString>;
  'x5t#S256': z.ZodOptional<z.ZodString>;
  x5u: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
  kty: "OKP";
  crv: "X25519" | "Ed25519";
  x: string;
  kid?: string | undefined;
  alg?: string | undefined;
  key_ops?: string[] | undefined;
  use?: string | undefined;
  ext?: boolean | undefined;
  x5c?: string[] | undefined;
  x5t?: string | undefined;
  'x5t#S256'?: string | undefined;
  x5u?: string | undefined;
  d?: string | undefined;
}, {
  kty: "OKP";
  crv: "X25519" | "Ed25519";
  x: string;
  kid?: string | undefined;
  alg?: string | undefined;
  key_ops?: string[] | undefined;
  use?: string | undefined;
  ext?: boolean | undefined;
  x5c?: string[] | undefined;
  x5t?: string | undefined;
  'x5t#S256'?: string | undefined;
  x5u?: string | undefined;
  d?: string | undefined;
}>;
type KmsJwkPublicOkp = z.output<typeof zKmsJwkPublicOkp>;
declare const zKmsJwkPrivateOkp: z.ZodObject<{
  d: z.ZodString;
  kty: z.ZodLiteral<"OKP">;
  crv: z.ZodEnum<["X25519", "Ed25519"]>;
  x: z.ZodString;
  kid: z.ZodOptional<z.ZodString>;
  alg: z.ZodOptional<z.ZodString>;
  key_ops: z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"sign">, z.ZodLiteral<"verify">, z.ZodLiteral<"encrypt">, z.ZodLiteral<"decrypt">, z.ZodLiteral<"wrapKey">, z.ZodLiteral<"unwrapKey">, z.ZodLiteral<"deriveKey">, z.ZodLiteral<"deriveBits">]>, z.ZodString]>, "many">, string[], string[]>>;
  use: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"sig">, z.ZodLiteral<"enc">]>, z.ZodString]>>;
  ext: z.ZodOptional<z.ZodBoolean>;
  x5c: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
  x5t: z.ZodOptional<z.ZodString>;
  'x5t#S256': z.ZodOptional<z.ZodString>;
  x5u: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
  kty: "OKP";
  crv: "X25519" | "Ed25519";
  x: string;
  d: string;
  kid?: string | undefined;
  alg?: string | undefined;
  key_ops?: string[] | undefined;
  use?: string | undefined;
  ext?: boolean | undefined;
  x5c?: string[] | undefined;
  x5t?: string | undefined;
  'x5t#S256'?: string | undefined;
  x5u?: string | undefined;
}, {
  kty: "OKP";
  crv: "X25519" | "Ed25519";
  x: string;
  d: string;
  kid?: string | undefined;
  alg?: string | undefined;
  key_ops?: string[] | undefined;
  use?: string | undefined;
  ext?: boolean | undefined;
  x5c?: string[] | undefined;
  x5t?: string | undefined;
  'x5t#S256'?: string | undefined;
  x5u?: string | undefined;
}>;
type KmsJwkPrivateOkp = z.output<typeof zKmsJwkPrivateOkp>;
//#endregion
export { KmsJwkPrivateOkp, KmsJwkPublicOkp };
//# sourceMappingURL=okpJwk.d.ts.map