import { CdmAttributeContext, CdmCorpusContext, CdmEntityReference, CdmObject, CdmObjectDefinitionBase, cdmObjectType, ResolvedAttributeSetBuilder, ResolvedTraitSetBuilder, resolveOptions, VisitCallback } from '../internal';
export declare class CdmConstantEntityDefinition extends CdmObjectDefinitionBase {
    private TAG;
    constantEntityName: string;
    entityShape: CdmEntityReference;
    constantValues: string[][];
    static get objectType(): cdmObjectType;
    constructor(ctx: CdmCorpusContext, constantEntityName: string);
    copy(resOpt?: resolveOptions, host?: CdmObject): CdmObject;
    validate(): boolean;
    getObjectType(): cdmObjectType;
    isDerivedFrom(base: string, resOpt?: resolveOptions): boolean;
    getName(): string;
    getEntityShape(): CdmEntityReference;
    setEntityShape(shape: CdmEntityReference): CdmEntityReference;
    getConstantValues(): string[][];
    setConstantValues(values: string[][]): string[][];
    visit(pathFrom: string, preChildren: VisitCallback, postChildren: VisitCallback): boolean;
    /**
     * @internal
     */
    fetchDeclaredPath(pathFrom: string): string;
    /**
     * @internal
     */
    constructResolvedTraits(rtsb: ResolvedTraitSetBuilder, resOpt: resolveOptions): void;
    /**
     * @internal
     */
    constructResolvedAttributes(resOpt: resolveOptions, under?: CdmAttributeContext): ResolvedAttributeSetBuilder;
    /**
     * @internal
     */
    findValue(resOpt: resolveOptions, attReturn: string | number, attSearch: string | number, valueSearch: string, order: number, action: (found: string) => string): void;
    /**
     * @internal
     */
    fetchConstantValue(resOpt: resolveOptions, attReturn: string | number, attSearch: string | number, valueSearch: string, order: number): string;
    /**
     * @internal
     */
    updateConstantValue(resOpt: resolveOptions, attReturn: string | number, newValue: string, attSearch: string | number, valueSearch: string, order: number): string;
}
