import { Point3D } from "chootils/dist/points3d";
import { AnyCameraName, CameraNameByPlace, CameraNameFromPlace, CharacterName, PlaceName, SegmentNameByPlace, SpotNameByPlace, WallNameByPlace } from "../../types";
type ToPlaceOption<T_PlaceName extends PlaceName> = {
    toPlace: T_PlaceName;
    toSpot?: SpotNameByPlace[T_PlaceName];
    toPositon?: Point3D;
    toCam?: CameraNameByPlace[T_PlaceName];
    toSegment?: SegmentNameByPlace[T_PlaceName];
};
export declare function lookAtSpot<T_Place extends PlaceName>(place: T_Place, spot: SpotNameByPlace[T_Place], character?: CharacterName): void;
export declare function hideWallIf<T_Place extends PlaceName, T_Wall extends WallNameByPlace[T_Place]>(placeName: T_Place, wallName: T_Wall, isDisabled: boolean): void;
export declare function showStoryView(isVisible?: boolean): Promise<void>;
export declare function setSegment<T_Place extends PlaceName, T_Segment extends SegmentNameByPlace[T_Place]>(_placeName: T_Place, segmentName: T_Segment): Promise<void>;
export declare function setCamera<T_Place extends PlaceName, T_Cam extends CameraNameFromPlace<T_Place> & AnyCameraName>(_placeName: T_Place, cameraName: T_Cam, whenToRun?: "now" | "at loop"): Promise<void>;
export declare function goToNewPlace<T_PlaceName extends PlaceName>(toOption: ToPlaceOption<T_PlaceName>, charNameParam?: CharacterName): void;
export {};
