/**
 * Copyright (c) 2023-2025 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author Adam Midlik <midlik@gmail.com>
 */
import { StructureElement } from '../../../mol-model/structure.js';
import { ColorTheme } from '../../../mol-theme/color.js';
import { ThemeDataContext } from '../../../mol-theme/theme.js';
import { Color } from '../../../mol-util/color/index.js';
import { ParamDefinition as PD } from '../../../mol-util/param-definition.js';
/** Special value that can be used as color with null-like semantic (i.e. "no color provided").
 * By some lucky coincidence, Mol* treats -1 as white. */
export declare const NoColor: Color;
/** Parameter definition for color theme "Multilayer" */
export declare function makeMultilayerColorThemeParams(colorThemeRegistry: ColorTheme.Registry, ctx: ThemeDataContext): {
    layers: PD.ObjectList<PD.Normalize<{
        theme: PD.NamedParams<any, string>;
        selection: PD.NamedParams<"all" | "polymer" | "water" | "branched" | "ligand" | "ion" | "lipid" | "protein" | "coarse" | "nucleic" | "non-standard", "static"> | PD.NamedParams<import("../../../mol-script/types.js").Script, "script"> | PD.NamedParams<import("../../../mol-script/language/expression.js").Expression, "expression"> | PD.NamedParams<StructureElement.Bundle, "bundle"> | PD.NamedParams<PD.Normalize<{
            label: /*elided*/ any;
            nullIfEmpty: /*elided*/ any;
            annotationId: /*elided*/ any;
            fieldName: /*elided*/ any;
            fieldValues: /*elided*/ any;
        }>, "annotation">;
    }>>;
    background: PD.Color;
};
/** Parameter definition for color theme "Multilayer" */
export type MultilayerColorThemeParams = ReturnType<typeof makeMultilayerColorThemeParams>;
/** Parameter values for color theme "Multilayer" */
export type MultilayerColorThemeProps = PD.Values<MultilayerColorThemeParams>;
/** Default values for `MultilayerColorThemeProps` */
export declare const DefaultMultilayerColorThemeProps: MultilayerColorThemeProps;
/** Unique name for "Multilayer" color theme */
export declare const MultilayerColorThemeName = "mvs-multilayer";
/** A thingy that is needed to register color theme "Multilayer" */
export declare function makeMultilayerColorThemeProvider(colorThemeRegistry: ColorTheme.Registry): ColorTheme.Provider<MultilayerColorThemeParams, typeof MultilayerColorThemeName>;
