import { Coordinates } from "./Coordinates"; import { TitleParameters } from "./TitleParameters"; export interface StreamDeckEvent { event: string; } export interface ActionEvent extends StreamDeckEvent { context: string; coordinates: { column: number; row: number; }; isInMultiAction: boolean; settings: T; state: number; userDesiredState: number; } export interface DidReceiveGlobalSettingsEvent { event: string; settings: T; } export interface DidReceiveSettingsEvent { action: string; event: string; context: string; device: string; settings: T; coordinates: Coordinates; isInMultiAction: boolean; } export type KeyDownEvent = ActionEvent; export type KeyUpEvent = ActionEvent; export type WillAppearEvent = ActionEvent; export type WillDisappearEvent = ActionEvent; export interface TitleParametersDidChangeEvent extends StreamDeckEvent { coordinates: Coordinates; settings: T; state: number; title: string; titleParameters: TitleParameters; } export interface DeviceDidConnectEvent extends StreamDeckEvent { device: string; deviceInfo: { name: string; type: number; size: { columns: number; rows: number; }; }; } export interface DeviceDidDisconnectEvent extends StreamDeckEvent { device: string; } export interface ApplicationDidLaunchEvent extends StreamDeckEvent { application: string; } export interface ApplicationDidTerminateEvent extends StreamDeckEvent { application: string; } export type SystemWakeUpEvent = StreamDeckEvent; export type PropertyInspectorDidAppearEvent = ActionEvent; export type PropertyInspectorDidDisappearEvent = ActionEvent; export type SendToPluginEvent = ActionEvent; export type SendToPropertyInspectorEvent = ActionEvent; export declare class Events { debug(...args: unknown[]): void; handleMessage(_event: unknown): void; handleDidReceiveGlobalSettings(event: DidReceiveGlobalSettingsEvent): void; handleDidReceiveSettings(event: DidReceiveSettingsEvent): void; handleDidConnectToSocket(): void; } export declare class PluginEvents extends Events { handleTitleParametersDidChange(event: TitleParametersDidChangeEvent): void; handleDeviceDidConnect(event: DeviceDidConnectEvent): void; handleDeviceDidDisconnect(event: DeviceDidDisconnectEvent): void; handleApplicationDidLaunch(event: ApplicationDidLaunchEvent): void; handleApplicationDidTerminate(event: ApplicationDidTerminateEvent): void; handleSystemDidWakeUp(event: SystemWakeUpEvent): void; } export declare class ActionEvents extends Events { handleKeyDown(event: KeyDownEvent): void; handleKeyUp(event: KeyUpEvent): void; handleWillAppear(event: WillAppearEvent): void; handleWillDisappear(event: WillDisappearEvent): void; handlePropertyInspectorDidAppear(event: PropertyInspectorDidAppearEvent): void; handlePropertyInspectorDidDisappear(event: PropertyInspectorDidDisappearEvent): void; handleSendToPlugin(event: SendToPluginEvent): void; } export declare class InspectorEvents extends Events { handleSendToPropertyInspector(event: SendToPropertyInspectorEvent): void; }