@benev/nubs
Version:
user-input system for web games
17 lines (16 loc) • 869 B
TypeScript
import { NubDetail } from "./types/detail.js";
import { MagicEventBase } from "@chasemoskal/magical";
type Any = NubDetail.Any;
export declare class NubEffectEvent<D extends Any = Any> extends MagicEventBase<NubDetail.Effect<D>> {
static type: string;
static target: (target: EventTarget) => {
dispatch(detail: NubDetail.Effect<NubDetail.Any>, options?: Partial<import("@chasemoskal/magical").DispatchOptions> | undefined): void;
listen(listener: (event: NubEffectEvent<NubDetail.Any>) => void, options?: boolean | AddEventListenerOptions | undefined): () => void;
};
static switch<R = void>(event: NubEffectEvent, handlers: {
key: (event: NubEffectEvent<NubDetail.Key>) => R;
pointer: (event: NubEffectEvent<NubDetail.Pointer>) => R;
stick: (event: NubEffectEvent<NubDetail.Stick>) => R;
}): R;
}
export {};