import type { DataType } from '../compoundData/CompoundData';
export interface Options {
    cache?: (query: string, value?: string) => DataType;
    parser?: (value: string, options?: Options) => any;
    targetUnits?: string;
    pressure?: {
        defaultValue?: number;
        defaultUnits?: string;
        targetUnits?: string;
        optional?: boolean;
    };
    temperature?: {
        defaultValue?: number;
        defaultUnits?: string;
        targetUnits?: string;
        optional?: boolean;
    };
}
export declare class Compound {
    data: DataType;
    cache?: (query: string, value?: string) => DataType;
    static fromSmiles: (smiles: string, options?: Pick<Options, 'cache'>) => Promise<Compound>;
    static fromInchiKey: (inchiKey: string, options?: Pick<Options, 'cache'>) => Promise<Compound>;
    static fromName: (name: string, options?: Pick<Options, 'cache'>) => Promise<Compound>;
    constructor(data: DataType, options?: Pick<Options, 'cache'>);
    getCID(): any;
    getData(): Promise<import("../compoundData/CompoundData").CompoundData>;
    toJSON(): {};
}
//# sourceMappingURL=Compound.d.ts.map