/**
 * Copyright (c) 2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author Alexander Rose <alexander.rose@weirdbyte.de>
 */
import { ParamDefinition as PD } from '../../../mol-util/param-definition';
import { CustomProperty } from '../../../mol-model-props/common/custom-property';
import { CustomModelProperty } from '../../../mol-model-props/common/custom-model-property';
import { Model, ResidueIndex } from '../../../mol-model/structure/model';
import { QuerySymbolRuntime } from '../../../mol-script/runtime/query/compiler';
export { QualityAssessment };
interface QualityAssessment {
    localMetrics: Map<string, Map<ResidueIndex, number>>;
    pLDDT?: Map<ResidueIndex, number>;
    qmean?: Map<ResidueIndex, number>;
}
declare namespace QualityAssessment {
    function isApplicable(model?: Model, localMetricName?: 'pLDDT' | 'qmean'): boolean;
    function obtain(ctx: CustomProperty.Context, model: Model, props: QualityAssessmentProps): Promise<CustomProperty.Data<QualityAssessment>>;
    const symbols: {
        pLDDT: QuerySymbolRuntime;
        qmean: QuerySymbolRuntime;
    };
}
export declare const QualityAssessmentParams: {};
export declare type QualityAssessmentParams = typeof QualityAssessmentParams;
export declare type QualityAssessmentProps = PD.Values<QualityAssessmentParams>;
export declare const QualityAssessmentProvider: CustomModelProperty.Provider<QualityAssessmentParams, QualityAssessment>;
