/**
 * Copyright (c) 2018-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author Michal Malý <michal.maly@ibt.cas.cz>
 * @author Jiří Černý <jiri.cerny@ibt.cas.cz>
 */
import { DataLocation } from '../../../mol-model/location';
import { DataLoci } from '../../../mol-model/loci';
export declare namespace ConfalPyramidsTypes {
    const DataTag = "dnatco-confal-half-pyramid";
    type Step = {
        PDB_model_number: number;
        name: string;
        auth_asym_id_1: string;
        auth_seq_id_1: number;
        label_comp_id_1: string;
        label_alt_id_1: string;
        PDB_ins_code_1: string;
        auth_asym_id_2: string;
        auth_seq_id_2: number;
        label_comp_id_2: string;
        label_alt_id_2: string;
        PDB_ins_code_2: string;
        confal_score: number;
        NtC: string;
        rmsd: number;
    };
    type MappedChains = Map<string, MappedResidues>;
    type MappedResidues = Map<number, number[]>;
    interface Steps {
        steps: Array<Step>;
        mapping: MappedChains[];
    }
    interface HalfPyramid {
        step: Step;
        isLower: boolean;
    }
    interface Location extends DataLocation<HalfPyramid, {}> {
    }
    function Location(step: Step, isLower: boolean): DataLocation<{
        step: Step;
        isLower: boolean;
    }, {}>;
    function isLocation(x: any): x is Location;
    interface Loci extends DataLoci<HalfPyramid, {}> {
    }
    function Loci(data: HalfPyramid, elements: ReadonlyArray<{}>): Loci;
    function isLoci(x: any): x is Loci;
}
