Protocols

The following protocols are available globally.

  • An event that includes coordinate information about the action.

    Note

    Actions that are part of a Multi-Action don’t have individual coordinates as they are nested inside their parent action.
    See more

    Declaration

    Swift

    public protocol Locatable
  • An event which includes the action’s settings.

    See more

    Declaration

    Swift

    @available(*, deprecated)
    public protocol EventSettings
  • A single action that can be assigned to a Stream Deck key.

    The action type is shown in the actions list and a new instance is initiated when the user adds an action to a key.

    See more

    Declaration

    Swift

    public protocol Action
  • A convenience protocol that provides default values for an Action.

    Use this protocol to create a standard button action that includes states.

    • controllers is set to [.keypad]
    • encoder is set to nil.
    See more

    Declaration

    Swift

    public protocol KeyAction : Action
  • A convenience protocol that provides default values for an Action.

    Use this protocol to create a standard button action that doesn’t include any states.

    • states is set to nil
    • controllers is set to [.keypad]
    • encoder is set to nil.
    See more

    Declaration

    Swift

    public protocol StatelessKeyAction : Action
  • A convenience protocol that provides default values for an Action.

    Use this protocol to create a dial action for the StreamDeck+.

    • states is set to nil
    • controllers is set to [.encoder]
    See more

    Declaration

    Swift

    public protocol EncoderAction : Action
  • The PluginDelegate represents the entry point to to your plugin and is used to generate the manifest.

    Your plugin’s @main type should conform to PluginDelegate in order for the framework to handle plugin lifecycle and command line events.

    See more

    Declaration

    Swift

    public protocol PluginDelegate
  • A key with an associated value type.

    See more

    Declaration

    Swift

    public protocol EnvironmentKey