import { AppObject, AppObjectRepo, AppObjectUC, ParametricLine } from "@vived/core";
export declare abstract class SelectAppObjectUC extends AppObjectUC {
    static readonly type = "SelectAppObjectUC";
    abstract allowSelect(): boolean;
    abstract allowTrySelect(): boolean;
    abstract selectAppObject: (id: string, isSelected: boolean) => void;
    abstract trySelectAppObject: (ray: ParametricLine) => void;
    static get(appObjects: AppObjectRepo): SelectAppObjectUC | undefined;
}
export declare function makeSelectAppObject(appObject: AppObject): SelectAppObjectUC;
//# sourceMappingURL=SelectAppObjectUC.d.ts.map