import { CdmAttributeContext, CdmCorpusContext, CdmObject, cdmObjectType, CdmOperationBase, CdmTypeAttributeDefinition, ProjectionAttributeStateSet, ProjectionContext, resolveOptions, VisitCallback } from '../../internal';
/**
 * Class to handle AddCountAttribute operations
 */
export declare class CdmOperationAddCountAttribute extends CdmOperationBase {
    private TAG;
    countAttribute: CdmTypeAttributeDefinition;
    constructor(ctx: CdmCorpusContext);
    /**
     * @inheritdoc
     */
    copy(resOpt?: resolveOptions, host?: CdmObject): CdmObject;
    /**
     * @inheritdoc
     */
    getName(): string;
    /**
     * @inheritdoc
     */
    getObjectType(): cdmObjectType;
    /**
     * @inheritdoc
     */
    validate(): boolean;
    /**
     * @inheritdoc
     */
    visit(pathFrom: string, preChildren: VisitCallback, postChildren: VisitCallback): boolean;
    /**
     * @inheritdoc
     * @internal
     */
    appendProjectionAttributeState(projCtx: ProjectionContext, projOutputSet: ProjectionAttributeStateSet, attrCtx: CdmAttributeContext): ProjectionAttributeStateSet;
}
