@ahmafi/pixi-viewport
Version:
A highly configurable viewport/2D camera designed to work with pixi.js. Features include dragging, pinch-to-zoom, mouse wheel zooming, decelerated dragging, follow target, snap to point, snap to zoom, clamping, bouncing on edges, and move on mouse edges.
36 lines (35 loc) • 1.88 kB
TypeScript
import type { Animate, Bounce, Clamp, ClampZoom, Decelerate, Drag, Follow, MouseEdges, Pinch, Plugin, Snap, SnapZoom, Wheel } from './plugins';
import type { FederatedEvent } from '@pixi/events';
import type { Viewport } from './Viewport';
export declare class PluginManager {
plugins: Partial<Record<string, Plugin>>;
list: Array<Plugin>;
readonly viewport: Viewport;
constructor(viewport: Viewport);
add(name: string, plugin: Plugin, index?: number): void;
get(name: 'animate', ignorePaused?: boolean): Animate | undefined | null;
get(name: 'bounce', ignorePaused?: boolean): Bounce | undefined | null;
get(name: 'clamp', ignorePaused?: boolean): Clamp | undefined | null;
get(name: 'clamp-zoom', ignorePaused?: boolean): ClampZoom | undefined | null;
get(name: 'decelerate', ignorePaused?: boolean): Decelerate | undefined | null;
get(name: 'drag', ignorePaused?: boolean): Drag | undefined | null;
get(name: 'follow', ignorePaused?: boolean): Follow | undefined | null;
get(name: 'mouse-edges', ignorePaused?: boolean): MouseEdges | undefined | null;
get(name: 'pinch', ignorePaused?: boolean): Pinch | undefined | null;
get(name: 'snap', ignorePaused?: boolean): Snap | undefined | null;
get(name: 'snap-zoom', ignorePaused?: boolean): SnapZoom | undefined | null;
get(name: 'wheel', ignorePaused?: boolean): Wheel | undefined | null;
get<T extends Plugin = Plugin>(name: string, ignorePaused?: boolean): T | undefined | null;
update(elapsed: number): void;
resize(): void;
reset(): void;
removeAll(): void;
remove(name: string): void;
pause(name: string): void;
resume(name: string): void;
sort(): void;
down(event: FederatedEvent): boolean;
move(event: FederatedEvent): boolean;
up(event: FederatedEvent): boolean;
wheel(e: WheelEvent): boolean;
}