@credo-ts/core
Version:
<p align="center"> <br /> <img alt="Credo Logo" src="https://github.com/openwallet-foundation/credo-ts/blob/c7886cb8377ceb8ee4efe8d264211e561a75072d/images/credo-logo.png" height="250px" /> </p> <h1 align="center"><b>Credo - Core</b></h1
99 lines (98 loc) • 3.82 kB
text/typescript
import { DocumentLoader, Proof, VerificationMethod } from "../jsonldUtil.mjs";
import { LdKeyPair } from "../models/LdKeyPair.mjs";
//#region src/modules/vc/data-integrity/signature-suites/JwsLinkedDataSignature.d.ts
declare const LinkedDataSignature: any;
interface JwsLinkedDataSignatureOptions {
type: string;
algorithm: string;
LDKeyClass: typeof LdKeyPair;
key?: LdKeyPair;
proof: Proof;
date: string;
contextUrl: string;
useNativeCanonize: boolean;
}
declare class JwsLinkedDataSignature extends LinkedDataSignature {
/**
* @param options - Options hashmap.
* @param options.type - Provided by subclass.
* @param options.alg - JWS alg provided by subclass.
* @param [options.LDKeyClass] - Provided by subclass or subclass
* overrides `getVerificationMethod`.
*
* Either a `key` OR at least one of `signer`/`verifier` is required.
*
* @param [options.key] - An optional key object (containing an
* `id` property, and either `signer` or `verifier`, depending on the
* intended operation. Useful for when the application is managing keys
* itself (when using a KMS, you never have access to the private key,
* and so should use the `signer` param instead).
*
* Advanced optional parameters and overrides.
*
* @param [options.proof] - A JSON-LD document with options to use
* for the `proof` node. Any other custom fields can be provided here
* using a context different from `security-v2`.
* @param [options.date] - Signing date to use if not passed.
* @param options.contextUrl - JSON-LD context url that corresponds
* to this signature suite. Used for enforcing suite context during the
* `sign()` operation.
* @param [options.useNativeCanonize] - Whether to use a native
* canonize algorithm.
*/
constructor(options: JwsLinkedDataSignatureOptions);
/**
* @param options - Options hashmap.
* @param options.verifyData - The data to sign.
* @param options.proof - A JSON-LD document with options to use
* for the `proof` node. Any other custom fields can be provided here
* using a context different from `security-v2`.
*
* @returns The proof containing the signature value.
*/
sign(options: {
verifyData: Uint8Array;
proof: Proof;
}): Promise<Proof>;
/**
* @param options - Options hashmap.
* @param options.verifyData - The data to verify.
* @param options.verificationMethod - A verification method.
* @param options.proof - The proof to be verified.
*
* @returns Resolves with the verification result.
*/
verifySignature(options: {
verifyData: Uint8Array;
verificationMethod: VerificationMethod;
proof: Proof;
}): Promise<any>;
getVerificationMethod(options: {
proof: Proof;
documentLoader?: DocumentLoader;
}): Promise<any>;
/**
* Checks whether a given proof exists in the document.
*
* @param options - Options hashmap.
* @param options.proof - A proof.
* @param options.document - A JSON-LD document.
* @param options.purpose - A jsonld-signatures ProofPurpose
* instance (e.g. AssertionProofPurpose, AuthenticationProofPurpose, etc).
* @param options.documentLoader - A secure document loader (it is
* recommended to use one that provides static known documents, instead of
* fetching from the web) for returning contexts, controller documents,
* keys, and other relevant URLs needed for the proof.
*
* @returns Whether a match for the proof was found.
*/
matchProof(options: {
proof: Proof;
document: VerificationMethod;
purpose: any;
documentLoader?: DocumentLoader;
}): Promise<boolean>;
}
//#endregion
export { JwsLinkedDataSignature, JwsLinkedDataSignatureOptions };
//# sourceMappingURL=JwsLinkedDataSignature.d.mts.map