/// import RequestToken from '../../../../tokens/RequestToken'; import RequestAPI from '../../../RequestAPI'; /** * Target options for Look * @typedef CommandRequester.expression.TargetMode * @prop Position * @prop Angle * @prop Entity * @prop Scren * @intdocs */ export declare enum TargetMode { Position = 0, Angle = 1, Entity = 2, ScreenCoords = 3, } export interface LookAtAchievedResult { AngleTarget: JIBO.v1.AngleVector; PositionTarget: JIBO.v1.Vector3; } export interface LookAtTrackLostResult { EntityTarget: JIBO.v1.LookAtEntity; AngleTarget: JIBO.v1.AngleVector; PositionTarget: JIBO.v1.Vector3; } /** * @class LookToken * @extends RequestToken * @hideconstructor */ export declare class LookToken extends RequestToken { } /** * Internal Look class * @class CommandRequester.expression.Look * @intdocs */ export declare class Look extends RequestAPI { /** * Generate Look Protocol * @method CommandRequester.expression.Look#generateProtocol * @param {CommandRequester.expression.TargetMode} targetMode - How we are targetting our target (depends on the target type) * @param {(CommandRequester.Vector2|CommandRequester.Vector3|CommandRequester.expression.LookAtEntity)} target - What we're looking at (Entity, Angle or Point in space) * @param {boolean} levelHead - `true` to keep Jibo's head level while he moves. * @param {boolean} [shouldTrack=false] - If we should track the target entity (Entity-Mode only) * @returns {LookAtRequest} * @intdocs */ static generateProtocol(targetMode: TargetMode, target: JIBO.v1.Vector2 | JIBO.v1.Vector3 | JIBO.v1.LookAtEntity | JIBO.v1.AngleVector, levelHead: boolean, shouldTrack?: boolean): JIBO.v1.LookAtRequest; /** * Create LookToken from LookAtRequest protocol. * @method CommandRequester.expression.Look#generateToken * @param {LookAtRequest} protocol - LookAtRequest protocol to generate a LookToken from. * @param {boolean} [andSend=false] - `true` if the generated LookToken should also be sent as a request. * @return {LookToken} * @intdocs */ generateToken(protocol: JIBO.v1.LookAtRequest, andSend?: boolean): LookToken; }