BluemixAnalytics.d.ts 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. export declare enum AnalyticsEventType {
  2. CreatedObject = "Created Object",
  3. ReadObject = "Read Object",
  4. UpdatedObject = "Updated Object",
  5. DeletedObject = "Deleted Object",
  6. SearchedObject = "Searched Object",
  7. RanProcess = "Ran Process",
  8. StartedProcess = "Started Process",
  9. EndedProcess = "Ended Process",
  10. CustomEvent = "Custom Event",
  11. ServiceLogin = "Service Login",
  12. ServiceLogout = "Service Logout",
  13. HybridRatedUsage = "Hybrid Rated Usage",
  14. VideoPlaybackStarted = "Video Playback Started",
  15. VideoPlaybackCompleted = "Video Playback Completed",
  16. ObjectInteraction = "Object Interaction"
  17. }
  18. /**
  19. * @see https://pages.github.ibm.com/Bluemix/platform-analytics/development/dev-schema/
  20. */
  21. export declare abstract class AnalyticsEvent {
  22. type: AnalyticsEventType;
  23. productTitle?: string;
  24. successFlag?: boolean;
  25. resultValue?: string;
  26. category?: string;
  27. platformTitle?: string;
  28. tenantId?: string;
  29. sessionId?: string;
  30. uiElement?: string;
  31. milestoneName?: string;
  32. intercomTag?: string;
  33. customName1: string;
  34. customValue1: string;
  35. constructor(type: AnalyticsEventType, action: string);
  36. }
  37. /**
  38. * OBJECT EVENTS
  39. */
  40. declare abstract class ObjectEvent extends AnalyticsEvent {
  41. objectType: string;
  42. object?: string | {};
  43. constructor(eventType: AnalyticsEventType, action: string);
  44. }
  45. export declare abstract class CreatedObjectEvent extends ObjectEvent {
  46. constructor(action: string);
  47. }
  48. export declare abstract class ReadObjectEvent extends ObjectEvent {
  49. constructor(action: string);
  50. }
  51. export declare abstract class UpdatedObjectEvent extends ObjectEvent {
  52. constructor(action: string);
  53. }
  54. export declare abstract class DeletedObjectEvent extends ObjectEvent {
  55. constructor(action: string);
  56. }
  57. export declare abstract class SearchedObjectEvent extends ObjectEvent {
  58. constructor(action: string);
  59. }
  60. /**
  61. * PROCESS EVENTS
  62. */
  63. declare abstract class ProcessEvent extends AnalyticsEvent {
  64. processType: string;
  65. process?: string | {};
  66. constructor(eventType: AnalyticsEventType, processType: string);
  67. }
  68. export declare abstract class RanProcessEvent extends ProcessEvent {
  69. constructor(processType: string);
  70. }
  71. export declare abstract class StartedProcessEvent extends ProcessEvent {
  72. constructor(action: string);
  73. }
  74. export declare abstract class EndedProcessEvent extends ProcessEvent {
  75. constructor(action: string);
  76. }
  77. /**
  78. * CUSTOM EVENTS
  79. */
  80. export declare abstract class CustomEvent extends ObjectEvent {
  81. action: string;
  82. constructor(action: string);
  83. }
  84. /**
  85. * LOG IN/OUT EVENTS
  86. */
  87. declare abstract class LogInOutEvent extends AnalyticsEvent {
  88. accountId?: string;
  89. region?: string;
  90. email?: string;
  91. constructor(eventType: AnalyticsEventType, action: string);
  92. }
  93. export declare class ServiceLoginEvent extends LogInOutEvent {
  94. loginMethod?: string;
  95. constructor(action: string);
  96. }
  97. export declare class ServiceLogoutEvent extends LogInOutEvent {
  98. logoutMethod?: string;
  99. constructor(action: string);
  100. }
  101. /**
  102. * HYBRID RATED USAGE EVENT
  103. */
  104. export declare abstract class HybridRatedUsageEvent extends AnalyticsEvent {
  105. constructor(action: string);
  106. }
  107. /**
  108. * VIDEO EVENTS
  109. */
  110. declare abstract class VideoEvent extends AnalyticsEvent {
  111. totalLength?: number;
  112. videoPlayer?: string;
  113. sound?: boolean;
  114. url?: string;
  115. fullScreen?: boolean;
  116. contentAssetId?: string;
  117. contentAssetIds?: string[];
  118. contentPodId?: string;
  119. contentPodIds?: string[];
  120. adPodId?: string;
  121. adPodIds?: string[];
  122. adType?: string;
  123. adTypes?: string[];
  124. position?: number;
  125. seekPosition?: number;
  126. bitrate?: number;
  127. framerate?: number;
  128. adEnabled?: boolean;
  129. quality?: string;
  130. method?: string;
  131. livestream?: boolean;
  132. customName2: string;
  133. customValue2: string;
  134. constructor(eventType: AnalyticsEventType, action: string, videoUrl: string);
  135. }
  136. export declare abstract class VideoPlaybackStartedEvent extends VideoEvent {
  137. constructor(action: string, videoUrl: string);
  138. }
  139. export declare abstract class VideoPlaybackCompletedEvent extends VideoEvent {
  140. constructor(action: string, videoUrl: string);
  141. }
  142. export {};