import { KnownJwaSignatureAlgorithm } from "../../jwa.js";
import { AnyUint8Array } from "../../../../../types.js";
import { KmsJwkPublicEc } from "./ecJwk.js";
import { PublicJwkType } from "../PublicJwk.js";

//#region src/modules/kms/jwk/kty/ec/P384PublicJwk.d.ts
type Jwk = KmsJwkPublicEc & {
  crv: 'P-384';
};
declare class P384PublicJwk implements PublicJwkType<Jwk> {
  readonly jwk: Jwk;
  static supportedSignatureAlgorithms: KnownJwaSignatureAlgorithm[];
  static supportdEncryptionKeyAgreementAlgorithms: "ECDH-ES"[];
  static multicodecPrefix: number;
  supportdEncryptionKeyAgreementAlgorithms: "ECDH-ES"[];
  supportedSignatureAlgorithms: ("HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256" | "ES384" | "ES512" | "PS256" | "PS384" | "PS512" | "EdDSA" | "Ed25519" | "ES256K")[];
  multicodecPrefix: number;
  constructor(jwk: Jwk);
  get publicKey(): {
    crv: "P-384";
    kty: "EC";
    publicKey: AnyUint8Array;
  };
  get compressedPublicKey(): {
    crv: "P-384";
    kty: "EC";
    publicKey: AnyUint8Array;
  };
  get multicodec(): AnyUint8Array;
  static fromPublicKey(publicKey: AnyUint8Array): P384PublicJwk;
  static fromMulticodec(multicodec: AnyUint8Array): P384PublicJwk;
}
//#endregion
export { P384PublicJwk };
//# sourceMappingURL=P384PublicJwk.d.ts.map