event.ts 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
  2. import { APIResource } from '../core/resource';
  3. import * as SessionAPI from './session';
  4. import * as Shared from './shared';
  5. import { APIPromise } from '../core/api-promise';
  6. import { Stream } from '../core/streaming';
  7. import { RequestOptions } from '../internal/request-options';
  8. export class Event extends APIResource {
  9. /**
  10. * Get events
  11. */
  12. list(options?: RequestOptions): APIPromise<Stream<EventListResponse>> {
  13. return this._client.get('/event', { ...options, stream: true }) as APIPromise<Stream<EventListResponse>>;
  14. }
  15. }
  16. export type EventListResponse =
  17. | EventListResponse.EventLspClientDiagnostics
  18. | EventListResponse.EventPermissionUpdated
  19. | EventListResponse.EventFileEdited
  20. | EventListResponse.EventInstallationUpdated
  21. | EventListResponse.EventMessageUpdated
  22. | EventListResponse.EventMessageRemoved
  23. | EventListResponse.EventMessagePartUpdated
  24. | EventListResponse.EventStorageWrite
  25. | EventListResponse.EventSessionUpdated
  26. | EventListResponse.EventSessionDeleted
  27. | EventListResponse.EventSessionIdle
  28. | EventListResponse.EventSessionError
  29. | EventListResponse.EventFileWatcherUpdated
  30. | EventListResponse.EventIdeInstalled;
  31. export namespace EventListResponse {
  32. export interface EventLspClientDiagnostics {
  33. properties: EventLspClientDiagnostics.Properties;
  34. type: 'lsp.client.diagnostics';
  35. }
  36. export namespace EventLspClientDiagnostics {
  37. export interface Properties {
  38. path: string;
  39. serverID: string;
  40. }
  41. }
  42. export interface EventPermissionUpdated {
  43. properties: EventPermissionUpdated.Properties;
  44. type: 'permission.updated';
  45. }
  46. export namespace EventPermissionUpdated {
  47. export interface Properties {
  48. id: string;
  49. metadata: { [key: string]: unknown };
  50. sessionID: string;
  51. time: Properties.Time;
  52. title: string;
  53. }
  54. export namespace Properties {
  55. export interface Time {
  56. created: number;
  57. }
  58. }
  59. }
  60. export interface EventFileEdited {
  61. properties: EventFileEdited.Properties;
  62. type: 'file.edited';
  63. }
  64. export namespace EventFileEdited {
  65. export interface Properties {
  66. file: string;
  67. }
  68. }
  69. export interface EventInstallationUpdated {
  70. properties: EventInstallationUpdated.Properties;
  71. type: 'installation.updated';
  72. }
  73. export namespace EventInstallationUpdated {
  74. export interface Properties {
  75. version: string;
  76. }
  77. }
  78. export interface EventMessageUpdated {
  79. properties: EventMessageUpdated.Properties;
  80. type: 'message.updated';
  81. }
  82. export namespace EventMessageUpdated {
  83. export interface Properties {
  84. info: SessionAPI.Message;
  85. }
  86. }
  87. export interface EventMessageRemoved {
  88. properties: EventMessageRemoved.Properties;
  89. type: 'message.removed';
  90. }
  91. export namespace EventMessageRemoved {
  92. export interface Properties {
  93. messageID: string;
  94. sessionID: string;
  95. }
  96. }
  97. export interface EventMessagePartUpdated {
  98. properties: EventMessagePartUpdated.Properties;
  99. type: 'message.part.updated';
  100. }
  101. export namespace EventMessagePartUpdated {
  102. export interface Properties {
  103. part: SessionAPI.Part;
  104. }
  105. }
  106. export interface EventStorageWrite {
  107. properties: EventStorageWrite.Properties;
  108. type: 'storage.write';
  109. }
  110. export namespace EventStorageWrite {
  111. export interface Properties {
  112. key: string;
  113. content?: unknown;
  114. }
  115. }
  116. export interface EventSessionUpdated {
  117. properties: EventSessionUpdated.Properties;
  118. type: 'session.updated';
  119. }
  120. export namespace EventSessionUpdated {
  121. export interface Properties {
  122. info: SessionAPI.Session;
  123. }
  124. }
  125. export interface EventSessionDeleted {
  126. properties: EventSessionDeleted.Properties;
  127. type: 'session.deleted';
  128. }
  129. export namespace EventSessionDeleted {
  130. export interface Properties {
  131. info: SessionAPI.Session;
  132. }
  133. }
  134. export interface EventSessionIdle {
  135. properties: EventSessionIdle.Properties;
  136. type: 'session.idle';
  137. }
  138. export namespace EventSessionIdle {
  139. export interface Properties {
  140. sessionID: string;
  141. }
  142. }
  143. export interface EventSessionError {
  144. properties: EventSessionError.Properties;
  145. type: 'session.error';
  146. }
  147. export namespace EventSessionError {
  148. export interface Properties {
  149. error?:
  150. | Shared.ProviderAuthError
  151. | Shared.UnknownError
  152. | Properties.MessageOutputLengthError
  153. | Shared.MessageAbortedError;
  154. sessionID?: string;
  155. }
  156. export namespace Properties {
  157. export interface MessageOutputLengthError {
  158. data: unknown;
  159. name: 'MessageOutputLengthError';
  160. }
  161. }
  162. }
  163. export interface EventFileWatcherUpdated {
  164. properties: EventFileWatcherUpdated.Properties;
  165. type: 'file.watcher.updated';
  166. }
  167. export namespace EventFileWatcherUpdated {
  168. export interface Properties {
  169. event: 'rename' | 'change';
  170. file: string;
  171. }
  172. }
  173. export interface EventIdeInstalled {
  174. properties: EventIdeInstalled.Properties;
  175. type: 'ide.installed';
  176. }
  177. export namespace EventIdeInstalled {
  178. export interface Properties {
  179. ide: string;
  180. }
  181. }
  182. }
  183. export declare namespace Event {
  184. export { type EventListResponse as EventListResponse };
  185. }