import { HashAlgorithm } from './util/hash.js';
import { BlockchainName } from './blockchains/blockchains.js';
export type Certificate = {
    blockchains: Blockchains;
    meta: {
        version: number;
        blockchains: BlockchainName[];
        salt: string;
    };
    info?: {
        hash_algorithm?: HashAlgorithm;
        salted_hash?: string;
    };
    document_hash: string;
};
type Blockchains = {
    xrp?: BlockchainData;
    solana?: BlockchainData;
};
export type BlockchainData = {
    transaction: string;
    block_timestamp: number;
    merkle_tree_splice: string[];
};
export declare function getCertificateFromFile(certificateFile: File): Promise<Certificate>;
export declare function getCertificateFromString(certificateString: string): Promise<Certificate>;
export declare class CertificateHelper {
    cert: Certificate;
    constructor(cert: Certificate);
    calculateSaltedHash(): Promise<string>;
    /**
     * Check, if the blockchains array contains invalid or extra fields
     */
    static isValidBlockchainList(blockchains: BlockchainName[] | undefined): boolean;
    /**
     * Check if the certificate has all necessary data
     */
    hasData(): boolean;
    getCertificateUnixTime(): number;
    getCertificateDate(): Date;
    getJSON(): string;
}
export {};
//# sourceMappingURL=certificate.d.ts.map