import { CIS4 } from '../cis4/util.js'; import { ConcordiumGRPCClient } from '../grpc/GRPCClient.js'; import { BlockHash, Network, VerifiablePresentation } from '../pub/types.js'; import { VerifiableCredentialProof } from '../types/VerifiablePresentation.js'; import { CredentialsInputs } from './types.js'; /** Contains the credential status and inputs required to verify a corresponding credential proof */ export type CredentialWithMetadata = { /** The credential status */ status: CIS4.CredentialStatus; /** The public data required to verify a corresponding credential proof */ inputs: CredentialsInputs; }; /** * Verifies the public metadata of the {@linkcode VerifiableCredentialProof}. * * @param grpc - The {@linkcode ConcordiumGRPCClient} to use for querying * @param network - The target network * @param credential - The credential proof to verify metadata for * @param [blockHash] - The block to verify the proof at. If not specified, the last finalized block is used. * * @returns The corresponding {@linkcode CredentialWithMetadata} if successful. * @throws If credential proof could not be successfully verified */ export declare function verifyCredentialMetadata(grpc: ConcordiumGRPCClient, network: Network, credential: VerifiableCredentialProof, blockHash?: BlockHash.Type): Promise; /** * Get all public metadata of the {@linkcode VerifiablePresentation}. The metadata is verified as part of this. * * @param grpc - The {@linkcode ConcordiumGRPCClient} to use for querying * @param network - The target network * @param presentation - The verifiable presentation to verify * @param [blockHash] - The block to verify the proof at. If not specified, the last finalized block is used. * * @returns The corresponding list of {@linkcode CredentialWithMetadata} if successful. * @throws If presentation could not be successfully verified */ export declare function getPublicData(grpc: ConcordiumGRPCClient, network: Network, presentation: VerifiablePresentation, blockHash?: BlockHash.Type): Promise;