/**
 * @author WMXPY
 * @namespace Property
 * @description Full Feature
 */
import { ImbricateCommonQueryOriginActionsOutcome, ImbricateCommonQueryOriginActionsQuery, ImbricateOriginActionInput, ImbricateOriginActionOutcome } from "../../common/action";
import { ImbricatePropertyKey } from "../definition";
import { IMBRICATE_PROPERTY_FEATURE } from "../feature";
import { IImbricateProperty } from "../interface";
import { IMBRICATE_PROPERTY_TYPE, ImbricatePropertyValueObject } from "../type";
export declare abstract class ImbricatePropertyFullFeatureWithActionBase<T extends IMBRICATE_PROPERTY_TYPE> implements IImbricateProperty<T> {
    abstract readonly propertyKey: ImbricatePropertyKey;
    abstract readonly propertyType: T;
    abstract readonly propertyValue: ImbricatePropertyValueObject<T>;
    readonly supportedFeatures: IMBRICATE_PROPERTY_FEATURE[];
    abstract queryOriginActions(query: ImbricateCommonQueryOriginActionsQuery): PromiseLike<ImbricateCommonQueryOriginActionsOutcome>;
    abstract executeOriginAction(input: ImbricateOriginActionInput): PromiseLike<ImbricateOriginActionOutcome>;
}
