import { CdmAttributeContext, CdmCollection, CdmCorpusContext, CdmDataPartitionDefinition, CdmDataPartitionPatternDefinition, CdmEntityDeclarationDefinition, CdmObject, CdmObjectDefinitionBase, cdmObjectType, ResolvedAttributeSetBuilder, ResolvedTraitSetBuilder, resolveOptions, VisitCallback } from '../internal';
/**
 * The object model implementation for referenced entity declaration.
 */
export declare class CdmReferencedEntityDeclarationDefinition extends CdmObjectDefinitionBase implements CdmEntityDeclarationDefinition {
    private TAG;
    /**
     * @inheritdoc
     */
    entityName: string;
    entityPath: string;
    dataPartitions: CdmCollection<CdmDataPartitionDefinition>;
    dataPartitionPatterns: CdmCollection<CdmDataPartitionPatternDefinition>;
    /**
     * @inheritdoc
     */
    lastFileStatusCheckTime: Date;
    /**
     * @inheritdoc
     */
    lastFileModifiedTime: Date;
    static get objectType(): cdmObjectType;
    /**
     * Initializes a new instance of referenced entity declaration.
     * @param ctx The context.
     * @param entityName The entity name.
     */
    constructor(ctx: CdmCorpusContext, entityName: string);
    /**
     * @inheritdoc
     */
    getObjectType(): cdmObjectType;
    /**
     * @inheritdoc
     */
    copy(resOpt?: resolveOptions, host?: CdmObject): CdmObject;
    /**
     * @inheritdoc
     */
    validate(): boolean;
    /**
     * @inheritdoc
     */
    getName(): string;
    /**
     * @inheritdoc
     */
    visit(pathFrom: string, preChildren: VisitCallback, postChildren: VisitCallback): boolean;
    /**
     * @inheritdoc
     */
    isDerivedFrom(base: string, resOpt?: resolveOptions): boolean;
    /**
     * @internal
     * @inheritdoc
     */
    constructResolvedTraits(rtsb: ResolvedTraitSetBuilder, resOpt: resolveOptions): void;
    /**
     * @internal
     * @inheritdoc
     */
    constructResolvedAttributes(resOpt: resolveOptions, under?: CdmAttributeContext): ResolvedAttributeSetBuilder;
    /**
     * @inheritdoc
     */
    fileStatusCheckAsync(): Promise<void>;
    /**
     * @inheritdoc
     */
    reportMostRecentTimeAsync(childTime: Date): Promise<void>;
}
