Files
grungnet/src/types/Events.ts

75 lines
2.5 KiB
TypeScript
Raw Normal View History

2021-07-16 21:39:45 +10:00
import Konva from "konva";
2021-07-17 18:18:57 +10:00
import { DefaultDice, DiceRoll } from "./Dice";
2021-07-13 08:59:28 +10:00
import { Map } from "./Map";
import { MapState } from "./MapState";
2021-07-17 12:48:04 +10:00
import { Note } from "./Note";
2021-07-17 18:18:57 +10:00
import { Timer } from "./Timer";
2021-07-17 14:36:39 +10:00
import { Token } from "./Token";
2021-07-13 08:59:28 +10:00
import { TokenState } from "./TokenState";
2021-07-17 17:25:41 +10:00
export type MapChangeEventHandler = (
map: Map | null,
mapState: MapState | null
) => void;
2021-07-13 08:59:28 +10:00
export type MapResetEventHandler = (newState: MapState) => void;
2021-07-17 12:48:04 +10:00
export type MapSettingsChangeEventHandler = (change: Partial<Map>) => void;
export type MapStateSettingsChangeEventHandler = (
change: Partial<MapState>
) => void;
2021-07-13 08:59:28 +10:00
export type DiceSelectEventHandler = (dice: DefaultDice) => void;
export type RequestCloseEventHandler = () => void;
export type TokensStateCreateHandler = (states: TokenState[]) => void;
export type TokenStateRemoveHandler = (tokenStateIds: string[]) => void;
2021-07-16 21:39:45 +10:00
export type TokenStateChangeEventHandler = (
2021-07-17 12:48:04 +10:00
changes: Record<string, Partial<TokenState>>
2021-07-16 21:39:45 +10:00
) => void;
export type TokenMenuOpenChangeEventHandler = (
tokenStateId: string,
tokenImage: Konva.Node
) => void;
2021-08-03 08:18:12 +10:00
export type TokenMenuCloseChangeEventHandler = () => void;
2021-07-17 14:36:39 +10:00
export type TokenSettingsChangeEventHandler = (change: Partial<Token>) => void;
export type TokenDragEventHandler = (
event: Konva.KonvaEventObject<DragEvent>,
tokenStateId: string
) => void;
2021-07-17 12:48:04 +10:00
export type NoteCreateEventHander = (notes: Note[]) => void;
export type NoteRemoveEventHander = (noteIds: string[]) => void;
export type NoteChangeEventHandler = (
changes: Record<string, Partial<Note>>
) => void;
2021-07-17 12:48:04 +10:00
export type NoteMenuOpenEventHandler = (
noteId: string,
noteNode: Konva.Node
) => void;
export type NoteDragEventHandler = (
event: Konva.KonvaEventObject<DragEvent>,
noteId: string
) => void;
2021-07-17 18:18:57 +10:00
export type DiceShareChangeEventHandler = (share: boolean) => void;
export type DiceRollsChangeEventHandler = (newRolls: DiceRoll[]) => void;
export type StreamStartEventHandler = (stream: MediaStream) => void;
export type StreamEndEventHandler = (stream: MediaStream) => void;
export type TimerStartEventHandler = (event: Timer) => void;
export type TimerStopEventHandler = () => void;
2021-07-21 18:56:18 +10:00
export type SelectionItemsChangeEventHandler = (
tokenChanges: Record<string, Partial<TokenState>>,
noteChanges: Record<string, Partial<Note>>
) => void;
2021-07-22 16:40:43 +10:00
export type SelectionItemsRemoveEventHandler = (
tokenStateIds: string[],
noteIds: string[]
) => void;
2021-07-23 15:41:07 +10:00
export type SelectionItemsCreateEventHandler = (
tokenStates: TokenState[],
notes: Note[]
) => void;