import { AppObject, AppObjectRepo, AppObjectUC, ParametricLine } from "@vived/core";
export declare abstract class PressAppObjectUC extends AppObjectUC {
    static readonly type = "PressAppObjectUC";
    abstract allowPress(): boolean;
    abstract allowTryPress(): boolean;
    abstract pressAppObject: (id: string | null, isPressed: boolean) => void;
    abstract tryPressAppObject: (ray: ParametricLine) => string | null;
    static get(appObjects: AppObjectRepo): PressAppObjectUC | undefined;
}
export declare function makePressAppObject(appObject: AppObject): PressAppObjectUC;
//# sourceMappingURL=PressAppObjectUC.d.ts.map