import { VC, JWE, UnsignedVC, ContactMethodQueryType } from '@learncard/types';
import { ProfileType, SigningAuthorityForUserType } from '../types/profile';
import { CredentialIssuer } from '../types/issuer';
import { BoostInstance } from '.././models/index';
import { DbTermsType } from '../types/consentflowcontract';
export declare const getBoostUri: (id: string, domain: string) => string;
export declare const isProfileBoostOwner: (profile: ProfileType, boost: BoostInstance) => Promise<boolean>;
export declare const isDraftBoost: (boost: BoostInstance) => boolean;
export declare const isProvisionalBoost: (boost: BoostInstance) => boolean;
export declare const isEditableBoost: (boost: BoostInstance) => boolean;
export declare const isBoostViewableByClaimLink: (boost: BoostInstance) => Promise<boolean>;
export declare const convertCredentialToBoostTemplateJSON: (credential: VC | UnsignedVC, defaultIssuerDid?: string) => string;
export declare const verifyCredentialIsDerivedFromBoost: (boost: BoostInstance, credential: VC, domain: string) => Promise<boolean>;
export declare const issueCertifiedBoost: (boost: BoostInstance, credential: VC, domain: string, ownerProfileId: string) => Promise<VC | JWE | false>;
export declare const decryptCredential: (credential: VC | JWE) => Promise<VC | false>;
export declare const sendBoost: ({ from, to, boost, credential, domain, skipNotification, autoAcceptCredential, skipCertification, contractTerms, metadata, activityId, integrationId, listingId, }: {
    from: CredentialIssuer;
    to: ProfileType;
    boost: BoostInstance;
    credential: VC | JWE;
    domain: string;
    skipNotification?: boolean;
    autoAcceptCredential?: boolean;
    skipCertification?: boolean;
    contractTerms?: DbTermsType;
    metadata?: Record<string, unknown>;
    activityId?: string;
    integrationId?: string;
    listingId?: string;
}) => Promise<string>;
export declare const constructCertifiedBoostCredential: (boost: BoostInstance, credential: VC | JWE, domain: string, issuerDid: string) => Promise<UnsignedVC>;
export declare const issueClaimLinkBoost: (boost: BoostInstance, domain: string, from: CredentialIssuer, to: ProfileType, signingAuthorityForUser: SigningAuthorityForUserType) => Promise<string>;
export declare const isInboxRecipient: (recipient: string) => ContactMethodQueryType | null;
export declare const prepareCredentialFromBoost: (boost: BoostInstance, boostUri: string, domain: string, options?: {
    templateData?: Record<string, unknown>;
    recipientDid?: string;
    recipientName?: string;
    issuerDid?: string;
}) => Promise<UnsignedVC>;
export declare const appendTemplateEvidenceToCredential: (credential: UnsignedVC, templateData?: Record<string, unknown>, allowAutoAppend?: boolean) => UnsignedVC;
export declare const resolveBoostByUri: (boostUri: string) => Promise<BoostInstance>;
//# sourceMappingURL=boost.helpers.d.ts.map