@benev/nubs
Version:
user-input system for web games
26 lines (25 loc) • 590 B
TypeScript
import { V2 } from "../../tools/v2.js";
export declare namespace NubDetail {
type Kind = "key" | "pointer" | "stick";
interface Base {
kind: Kind;
cause: string;
}
interface Key extends Base {
kind: "key";
pressed: boolean;
}
interface Pointer extends Base {
kind: "pointer";
movement: V2;
position: V2;
}
interface Stick extends Base {
kind: "stick";
vector: V2;
}
type Any = Key | Pointer | Stick;
type Effect<D extends Any = Any> = D & {
effect: string;
};
}