import type { Manifest } from "../../api/index.js"; import type { Constructor, Unpack } from "../common/utils.js"; import type { SingletonAction } from "./singleton-action.js"; /** * Definition used to define an action. */ type ActionDefinition = Pick, "UUID">; /** * Defines a Stream Deck action associated with the plugin. * @param definition The definition of the action, e.g. it's identifier, name, etc. * @returns The definition decorator. */ export declare function action(definition: ActionDefinition): >(target: T, context: ClassDecoratorContext) => { new (...args: any[]): { /** * The universally-unique value that identifies the action within the manifest. */ readonly manifestId: string | undefined; get actions(): import("@elgato/utils").Enumerable | import("./key.js").KeyAction>; onDialDown?(ev: import("../index.js").DialDownEvent): Promise | void; onDialRotate?(ev: import("../index.js").DialRotateEvent): Promise | void; onDialUp?(ev: import("../index.js").DialUpEvent): Promise | void; onDidReceiveResources?(ev: import("../index.js").DidReceiveResourcesEvent): Promise | void; onDidReceiveSettings?(ev: import("../index.js").DidReceiveSettingsEvent): Promise | void; onKeyDown?(ev: import("../index.js").KeyDownEvent): Promise | void; onKeyUp?(ev: import("../index.js").KeyUpEvent): Promise | void; onPropertyInspectorDidAppear?(ev: import("../index.js").PropertyInspectorDidAppearEvent): Promise | void; onPropertyInspectorDidDisappear?(ev: import("../index.js").PropertyInspectorDidDisappearEvent): Promise | void; onSendToPlugin?(ev: import("../index.js").SendToPluginEvent): Promise | void; onTitleParametersDidChange?(ev: import("../index.js").TitleParametersDidChangeEvent): Promise | void; onTouchTap?(ev: import("../index.js").TouchTapEvent): Promise | void; onWillAppear?(ev: import("../index.js").WillAppearEvent): Promise | void; onWillDisappear?(ev: import("../index.js").WillDisappearEvent): Promise | void; }; } & T; export {};