import { ContextAbstract, File, LiteralUnion, Selector } from "../../../../../mdk-core/src";
import { Dimension, AnchorOption } from 'mdk-nbt';
import { ConditionFn } from "./Logic";
import { StoreFn } from "./StoreLogic";
import { CommandAbstract } from "../../../../../mdk-core/src";
export declare type SwizzleType = 'x' | 'y' | 'z' | 'xy' | 'xz' | 'yz' | 'xyz';
export declare class Execute extends CommandAbstract {
    constructor(context: File);
    align(swizzle?: SwizzleType): this;
    anchored(type?: AnchorOption): this;
    as(target?: string | Selector): this;
    at(target?: string | Selector): this;
    facing(location?: string): this;
    facingEntity(target?: string | Selector, anchorType?: AnchorOption): this;
    in(dimension?: LiteralUnion<Dimension, string>): this;
    positioned(coordicate?: string): this;
    positionedEntity(target?: string | Selector): this;
    rotated(y: number, x: number): this;
    rotatedEntity(target?: string | Selector): this;
    if(fn: ConditionFn): Execute;
    unless(fn: ConditionFn): Execute;
    storeResult(fn: StoreFn): Execute;
    storeSuccess(fn: StoreFn): Execute;
    run(cmd: string | ContextAbstract): void;
}
