import Component from "@egjs/component"; import { ReactiveSubscribe } from "@cfcs/core"; import { EventManager } from "./EventManager"; import { InterruptManager } from "./InterruptManager"; import { AxisManager, AxisOption, Axis } from "./AxisManager"; import { InputObserver } from "./InputObserver"; import { InputType } from "./inputType/InputType"; import { AxesEvents, AxesReactiveState, ObjectInterface, UpdateAnimationOption } from "./types"; import { AnimationManager } from "./animation/AnimationManager"; export interface AxesOption { easing?: (x: number) => number; maximumDuration?: number; minimumDuration?: number; deceleration?: number; interruptable?: boolean; round?: number; nested?: boolean; } declare class Axes extends Component { axis: ObjectInterface; static VERSION: string; static PanInput: any; static PinchInput: any; static WheelInput: any; static MoveKeyInput: any; static RotatePanInput: any; static TRANSFORM: string; static DIRECTION_NONE: number; static DIRECTION_LEFT: number; static DIRECTION_RIGHT: number; static DIRECTION_UP: number; static DIRECTION_DOWN: number; static DIRECTION_HORIZONTAL: number; static DIRECTION_VERTICAL: number; static DIRECTION_ALL: number; get holding(): boolean; options: AxesOption; eventManager: EventManager; axisManager: AxisManager; interruptManager: InterruptManager; animationManager: AnimationManager; inputObserver: InputObserver; private _inputs; constructor(axis?: ObjectInterface, options?: AxesOption, startPos?: Axis); connect(axes: string[] | string, inputType: InputType): this; disconnect(inputType?: InputType): this; get(axes?: string[]): Axis; setTo(pos: Axis, duration?: number): this; setBy(pos: Axis, duration?: number): this; setOptions(options: AxesOption): this; setAxis(axis: ObjectInterface): this; stopAnimation(): this; updateAnimation(options: UpdateAnimationOption): this; isBounceArea(axes?: string[]): boolean; destroy(): void; } interface Axes extends AxesReactiveState, ReactiveSubscribe { } export default Axes;