Interface SubscriptionType<C extends EventSubCondition,​B,​E extends EventSubEvent>

All Known Implementing Classes:
BetaChannelSubscriptionGiftType, BetaExtensionBitsTransactionCreateType, ChannelBanType, ChannelCheerType, ChannelFollowType, ChannelModeratorAddType, ChannelModeratorRemoveType, ChannelPointsCustomRewardAddType, ChannelPointsCustomRewardRedemptionAddType, ChannelPointsCustomRewardRedemptionUpdateType, ChannelPointsCustomRewardRemoveType, ChannelPointsCustomRewardUpdateType, ChannelRaidType, ChannelSubscribeType, ChannelSubscriptionEndType, ChannelUnbanType, ChannelUpdateType, HypeTrainBeginType, HypeTrainEndType, HypeTrainProgressType, PollBeginType, PollEndType, PollProgressType, PredictionBeginType, PredictionEndType, PredictionLockType, PredictionProgressType, StreamOfflineType, StreamOnlineType, UserAuthorizationRevokeType, UserUpdateType

public interface SubscriptionType<C extends EventSubCondition,​B,​E extends EventSubEvent>
  • Method Details

    • getName

      java.lang.String getName()
      Returns:
      the subscription type name.
    • getVersion

      java.lang.String getVersion()
      Returns:
      the subscription type version.
    • getConditionBuilder

      B getConditionBuilder()
      The parameters inside these objects differ by subscription type and may differ by version.
      Returns:
      Subscription-specific parameter builder.
    • getEventClass

      java.lang.Class<E> getEventClass()
      Returns:
      the associated event class for this subscription type.
    • getConditionClass

      default java.lang.Class<C> getConditionClass()
    • prepareSubscription

      default EventSubSubscription prepareSubscription​(java.util.function.Function<B,​C> conditions, EventSubTransport transport)