import type { IDAgent } from './agent/index.js';
import type { DecodedVcJwt, Signer } from './credentials/credential.js';
import type { DecodedVpJwt } from './credentials/presentation.js';
import type { PresentationSubmission } from '@sphereon/ssi-types';
import type { EvaluationResults, PresentationResult } from '@sphereon/pex';
import type { PresentationDefinitionV2 } from './credentials/presentation.js';
import { SignOptions, VerifiableCredential } from './credentials/credential.js';
/**
 * The VC API is used to issue, present and verify VCs
 *
 * @beta
 */
export declare class VcApi {
    private agent;
    private connectedDid;
    constructor(options: {
        agent: IDAgent;
        connectedDid: string;
    });
    createCredential(issuer: string, subject: string, data: any, type?: string): Promise<VerifiableCredential>;
    signCredential(vc: VerifiableCredential, signOptions: SignOptions): Promise<any>;
    createJWT(payload: any, signOptions: SignOptions): Promise<any>;
    decodeJWT(jwt: string): Promise<DecodedVcJwt>;
    parseJWT(jwt: string): Promise<VerifiableCredential>;
    verifyJWT(jwt: string): Promise<boolean>;
    createPresentation(vcJwts: string[], presentationDefinition: PresentationDefinitionV2): Promise<PresentationResult>;
    satisfiesPresentation(vcJwts: string[], presentationDefinition: PresentationDefinitionV2): Promise<boolean>;
    decodePresentation(jwt: string): Promise<DecodedVpJwt>;
    evaluatePresentation(presentationDefinition: PresentationDefinitionV2, presentationResult: any): Promise<EvaluationResults>;
    validateSubmission(presentationSubmission: PresentationSubmission): Promise<any>;
    EdDsaSigner(privateKey: Uint8Array): Signer;
}
//# sourceMappingURL=vc-api.d.ts.map