whio-api-sdk 1.0.238-beta-staging → 1.0.240-beta-staging

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,10 @@
1
+ import { BaseClient } from './base-client';
2
+ import { DataStrategy, CreateDataStrategyDto, UpdateDataStrategyDto } from '../types';
3
+ export declare class DataStrategyModule extends BaseClient {
4
+ createDataStrategy(organizationId?: string, options?: Omit<CreateDataStrategyDto, 'organizationId'>): Promise<DataStrategy>;
5
+ getDataStrategies(organizationId?: string): Promise<DataStrategy[]>;
6
+ getDataStrategy(id: string): Promise<DataStrategy>;
7
+ getDataStrategyByOrganization(organizationId?: string): Promise<DataStrategy>;
8
+ updateDataStrategy(id: string, data: UpdateDataStrategyDto): Promise<DataStrategy>;
9
+ deleteDataStrategy(id: string): Promise<void>;
10
+ }
@@ -0,0 +1,46 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { BaseClient } from './base-client';
11
+ import urls from '../urls';
12
+ export class DataStrategyModule extends BaseClient {
13
+ createDataStrategy(organizationId, options) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ const dto = Object.assign({ organizationId: organizationId || this.user.organizationId }, options);
16
+ return this.request(urls.dataStrategies, 'POST', dto);
17
+ });
18
+ }
19
+ getDataStrategies(organizationId) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ const params = organizationId ? `?organizationId=${organizationId}` : '';
22
+ return this.request(`${urls.dataStrategies}${params}`, 'GET');
23
+ });
24
+ }
25
+ getDataStrategy(id) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ return this.request(`${urls.dataStrategies}/${id}`, 'GET');
28
+ });
29
+ }
30
+ getDataStrategyByOrganization(organizationId) {
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ const orgId = organizationId || this.user.organizationId;
33
+ return this.request(`${urls.dataStrategies}?organizationId=${orgId}`, 'GET');
34
+ });
35
+ }
36
+ updateDataStrategy(id, data) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ return this.request(`${urls.dataStrategies}/${id}`, 'PATCH', data);
39
+ });
40
+ }
41
+ deleteDataStrategy(id) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ yield this.request(`${urls.dataStrategies}/${id}`, 'DELETE');
44
+ });
45
+ }
46
+ }
@@ -1,5 +1,5 @@
1
1
  import { BaseClient } from './base-client';
2
- import { Session, CreateSessionDto, UpdateSessionDto, SetAudioStreamStatusDto } from '../types';
2
+ import { Session, CreateSessionDto, UpdateSessionDto, SetAudioStreamStatusDto, ForwardToTiakiResponse } from '../types';
3
3
  export declare class SessionModule extends BaseClient {
4
4
  createSession(sessionData: CreateSessionDto): Promise<Session>;
5
5
  getSessions(): Promise<Session[]>;
@@ -14,4 +14,5 @@ export declare class SessionModule extends BaseClient {
14
14
  sessionId: string;
15
15
  }>;
16
16
  setAudioStreamStatus(data: SetAudioStreamStatusDto): Promise<Session>;
17
+ forwardToTiaki(sessionId: string): Promise<ForwardToTiakiResponse>;
17
18
  }
@@ -60,4 +60,9 @@ export class SessionModule extends BaseClient {
60
60
  return this.request(`${urls.sessions}/set-audio-stream-status`, 'PATCH', data);
61
61
  });
62
62
  }
63
+ forwardToTiaki(sessionId) {
64
+ return __awaiter(this, void 0, void 0, function* () {
65
+ return this.request(`${urls.sessions}/forward-to-tiaki/${sessionId}`, 'POST');
66
+ });
67
+ }
63
68
  }
@@ -17,6 +17,7 @@ import { ExternalIntegrationModule } from './modules/external-integration.module
17
17
  import { WebSocketModule } from './modules/websocket.module';
18
18
  import { ReportsModule } from './modules/reports.module';
19
19
  import { PatientModule } from './modules/patient.module';
20
+ import { DataStrategyModule } from './modules/data-strategy.module';
20
21
  /**
21
22
  * Main SDK class that provides access to all domain-specific modules
22
23
  */
@@ -38,6 +39,7 @@ export declare class ApiSDK extends BaseClient {
38
39
  readonly websocket: WebSocketModule;
39
40
  readonly reports: ReportsModule;
40
41
  readonly patients: PatientModule;
42
+ readonly dataStrategies: DataStrategyModule;
41
43
  private modules;
42
44
  private sdkInitialized;
43
45
  constructor(config?: SDKConfig);
@@ -131,6 +133,7 @@ export declare class ApiSDK extends BaseClient {
131
133
  sessionId: string;
132
134
  }>;
133
135
  setAudioStreamStatus(...args: Parameters<SessionModule['setAudioStreamStatus']>): Promise<import("./types").Session>;
136
+ forwardToTiaki(...args: Parameters<SessionModule['forwardToTiaki']>): Promise<import("./types").ForwardToTiakiResponse>;
134
137
  createAgent(...args: Parameters<AgentModule['createAgent']>): Promise<import("./types").Agent>;
135
138
  getAgents(...args: Parameters<AgentModule['getAgents']>): Promise<import("./types").Agent[]>;
136
139
  getAgent(...args: Parameters<AgentModule['getAgent']>): Promise<import("./types").Agent>;
@@ -220,4 +223,10 @@ export declare class ApiSDK extends BaseClient {
220
223
  getCompanyDailyReportCsv(...args: Parameters<ReportsModule['getCompanyDailyReportCsv']>): Promise<string>;
221
224
  downloadCompanyDailyReport(...args: Parameters<ReportsModule['downloadCompanyDailyReport']>): Promise<Blob>;
222
225
  getPatientsFromIntegration(...args: Parameters<PatientModule['getPatientsFromIntegration']>): Promise<import("./types").PatientsFromIntegrationResponse>;
226
+ createDataStrategy(...args: Parameters<DataStrategyModule['createDataStrategy']>): Promise<import("./types").DataStrategy>;
227
+ getDataStrategies(...args: Parameters<DataStrategyModule['getDataStrategies']>): Promise<import("./types").DataStrategy[]>;
228
+ getDataStrategy(...args: Parameters<DataStrategyModule['getDataStrategy']>): Promise<import("./types").DataStrategy>;
229
+ getDataStrategyByOrganization(...args: Parameters<DataStrategyModule['getDataStrategyByOrganization']>): Promise<import("./types").DataStrategy>;
230
+ updateDataStrategy(...args: Parameters<DataStrategyModule['updateDataStrategy']>): Promise<import("./types").DataStrategy>;
231
+ deleteDataStrategy(...args: Parameters<DataStrategyModule['deleteDataStrategy']>): Promise<void>;
223
232
  }
@@ -25,6 +25,7 @@ import { ExternalIntegrationModule } from './modules/external-integration.module
25
25
  import { WebSocketModule } from './modules/websocket.module';
26
26
  import { ReportsModule } from './modules/reports.module';
27
27
  import { PatientModule } from './modules/patient.module';
28
+ import { DataStrategyModule } from './modules/data-strategy.module';
28
29
  /**
29
30
  * Main SDK class that provides access to all domain-specific modules
30
31
  */
@@ -50,12 +51,13 @@ export class ApiSDK extends BaseClient {
50
51
  this.websocket = new WebSocketModule(config);
51
52
  this.reports = new ReportsModule(config);
52
53
  this.patients = new PatientModule(config);
54
+ this.dataStrategies = new DataStrategyModule(config);
53
55
  // Store all modules for batch operations
54
56
  this.modules = [
55
57
  this.auth, this.users, this.organizations, this.teams, this.templates,
56
58
  this.transcriptionSummaries, this.sessions, this.agents, this.audio,
57
59
  this.workflows, this.integrationActions, this.logs, this.debug, this.externalIntegrations,
58
- this.websocket, this.reports, this.patients
60
+ this.websocket, this.reports, this.patients, this.dataStrategies
59
61
  ];
60
62
  // Auto-initialize the SDK
61
63
  this.initialize().catch(error => {
@@ -516,6 +518,11 @@ export class ApiSDK extends BaseClient {
516
518
  return this.sessions.setAudioStreamStatus(...args);
517
519
  });
518
520
  }
521
+ forwardToTiaki(...args) {
522
+ return __awaiter(this, void 0, void 0, function* () {
523
+ return this.sessions.forwardToTiaki(...args);
524
+ });
525
+ }
519
526
  // Agent methods
520
527
  createAgent(...args) {
521
528
  return __awaiter(this, void 0, void 0, function* () {
@@ -910,4 +917,35 @@ export class ApiSDK extends BaseClient {
910
917
  return this.patients.getPatientsFromIntegration(...args);
911
918
  });
912
919
  }
920
+ // DataStrategy methods
921
+ createDataStrategy(...args) {
922
+ return __awaiter(this, void 0, void 0, function* () {
923
+ return this.dataStrategies.createDataStrategy(...args);
924
+ });
925
+ }
926
+ getDataStrategies(...args) {
927
+ return __awaiter(this, void 0, void 0, function* () {
928
+ return this.dataStrategies.getDataStrategies(...args);
929
+ });
930
+ }
931
+ getDataStrategy(...args) {
932
+ return __awaiter(this, void 0, void 0, function* () {
933
+ return this.dataStrategies.getDataStrategy(...args);
934
+ });
935
+ }
936
+ getDataStrategyByOrganization(...args) {
937
+ return __awaiter(this, void 0, void 0, function* () {
938
+ return this.dataStrategies.getDataStrategyByOrganization(...args);
939
+ });
940
+ }
941
+ updateDataStrategy(...args) {
942
+ return __awaiter(this, void 0, void 0, function* () {
943
+ return this.dataStrategies.updateDataStrategy(...args);
944
+ });
945
+ }
946
+ deleteDataStrategy(...args) {
947
+ return __awaiter(this, void 0, void 0, function* () {
948
+ return this.dataStrategies.deleteDataStrategy(...args);
949
+ });
950
+ }
913
951
  }
@@ -0,0 +1,25 @@
1
+ import { Organization } from './organization.types';
2
+ export interface DataStrategy {
3
+ id: string;
4
+ daysToKeepTranscriptions: number | null;
5
+ daysToKeepAudio: number | null;
6
+ daysToKeepSummaries: number | null;
7
+ daysToKeepSessions: number | null;
8
+ createdAt: string;
9
+ updatedAt: string;
10
+ organizationId: string;
11
+ organization?: Organization;
12
+ }
13
+ export interface CreateDataStrategyDto {
14
+ organizationId: string;
15
+ daysToKeepTranscriptions?: number | null;
16
+ daysToKeepAudio?: number | null;
17
+ daysToKeepSummaries?: number | null;
18
+ daysToKeepSessions?: number | null;
19
+ }
20
+ export interface UpdateDataStrategyDto {
21
+ daysToKeepTranscriptions?: number | null;
22
+ daysToKeepAudio?: number | null;
23
+ daysToKeepSummaries?: number | null;
24
+ daysToKeepSessions?: number | null;
25
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -14,3 +14,4 @@ export * from './external-integration.types';
14
14
  export * from './websocket.types';
15
15
  export * from './reports.types';
16
16
  export * from './patient.types';
17
+ export * from './data-strategy.types';
@@ -15,3 +15,4 @@ export * from './external-integration.types';
15
15
  export * from './websocket.types';
16
16
  export * from './reports.types';
17
17
  export * from './patient.types';
18
+ export * from './data-strategy.types';
@@ -67,3 +67,7 @@ export interface SetAudioStreamStatusDto {
67
67
  sessionId: string;
68
68
  audioStreamStatus: AudioStreamStatus;
69
69
  }
70
+ export interface ForwardToTiakiResponse {
71
+ success: boolean;
72
+ message?: string;
73
+ }
@@ -35,5 +35,6 @@ declare const urls: {
35
35
  externalIntegrations: string;
36
36
  reports: string;
37
37
  patients: string;
38
+ dataStrategies: string;
38
39
  };
39
40
  export default urls;
@@ -53,5 +53,7 @@ const urls = {
53
53
  reports: '/reports',
54
54
  // Patients
55
55
  patients: '/patients',
56
+ // Data Strategies
57
+ dataStrategies: '/data-strategies',
56
58
  };
57
59
  export default urls;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "whio-api-sdk",
3
- "version": "1.0.238-beta-staging",
3
+ "version": "1.0.240-beta-staging",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
@@ -0,0 +1,38 @@
1
+ import { BaseClient } from './base-client';
2
+ import { DataStrategy, CreateDataStrategyDto, UpdateDataStrategyDto } from '../types';
3
+ import urls from '../urls';
4
+
5
+ export class DataStrategyModule extends BaseClient {
6
+ public async createDataStrategy(
7
+ organizationId?: string,
8
+ options?: Omit<CreateDataStrategyDto, 'organizationId'>,
9
+ ): Promise<DataStrategy> {
10
+ const dto: CreateDataStrategyDto = {
11
+ organizationId: organizationId || this.user!.organizationId,
12
+ ...options,
13
+ };
14
+ return this.request<DataStrategy>(urls.dataStrategies, 'POST', dto);
15
+ }
16
+
17
+ public async getDataStrategies(organizationId?: string): Promise<DataStrategy[]> {
18
+ const params = organizationId ? `?organizationId=${organizationId}` : '';
19
+ return this.request<DataStrategy[]>(`${urls.dataStrategies}${params}`, 'GET');
20
+ }
21
+
22
+ public async getDataStrategy(id: string): Promise<DataStrategy> {
23
+ return this.request<DataStrategy>(`${urls.dataStrategies}/${id}`, 'GET');
24
+ }
25
+
26
+ public async getDataStrategyByOrganization(organizationId?: string): Promise<DataStrategy> {
27
+ const orgId = organizationId || this.user!.organizationId;
28
+ return this.request<DataStrategy>(`${urls.dataStrategies}?organizationId=${orgId}`, 'GET');
29
+ }
30
+
31
+ public async updateDataStrategy(id: string, data: UpdateDataStrategyDto): Promise<DataStrategy> {
32
+ return this.request<DataStrategy>(`${urls.dataStrategies}/${id}`, 'PATCH', data);
33
+ }
34
+
35
+ public async deleteDataStrategy(id: string): Promise<void> {
36
+ await this.request(`${urls.dataStrategies}/${id}`, 'DELETE');
37
+ }
38
+ }
@@ -1,5 +1,5 @@
1
1
  import { BaseClient } from './base-client';
2
- import { Session, CreateSessionDto, UpdateSessionDto, SetAudioStreamStatusDto } from '../types';
2
+ import { Session, CreateSessionDto, UpdateSessionDto, SetAudioStreamStatusDto, ForwardToTiakiResponse } from '../types';
3
3
  import urls from '../urls';
4
4
 
5
5
  export class SessionModule extends BaseClient {
@@ -42,4 +42,8 @@ export class SessionModule extends BaseClient {
42
42
  public async setAudioStreamStatus(data: SetAudioStreamStatusDto): Promise<Session> {
43
43
  return this.request<Session>(`${urls.sessions}/set-audio-stream-status`, 'PATCH', data);
44
44
  }
45
+
46
+ public async forwardToTiaki(sessionId: string): Promise<ForwardToTiakiResponse> {
47
+ return this.request<ForwardToTiakiResponse>(`${urls.sessions}/forward-to-tiaki/${sessionId}`, 'POST');
48
+ }
45
49
  }
package/src/sdk/sdk.ts CHANGED
@@ -18,6 +18,7 @@ import { ExternalIntegrationModule } from './modules/external-integration.module
18
18
  import { WebSocketModule } from './modules/websocket.module';
19
19
  import { ReportsModule } from './modules/reports.module';
20
20
  import { PatientModule } from './modules/patient.module';
21
+ import { DataStrategyModule } from './modules/data-strategy.module';
21
22
 
22
23
  /**
23
24
  * Main SDK class that provides access to all domain-specific modules
@@ -40,6 +41,7 @@ export class ApiSDK extends BaseClient {
40
41
  public readonly websocket: WebSocketModule;
41
42
  public readonly reports: ReportsModule;
42
43
  public readonly patients: PatientModule;
44
+ public readonly dataStrategies: DataStrategyModule;
43
45
 
44
46
  private modules: BaseClient[];
45
47
  private sdkInitialized: boolean = false;
@@ -65,13 +67,14 @@ export class ApiSDK extends BaseClient {
65
67
  this.websocket = new WebSocketModule(config);
66
68
  this.reports = new ReportsModule(config);
67
69
  this.patients = new PatientModule(config);
70
+ this.dataStrategies = new DataStrategyModule(config);
68
71
 
69
72
  // Store all modules for batch operations
70
73
  this.modules = [
71
74
  this.auth, this.users, this.organizations, this.teams, this.templates,
72
75
  this.transcriptionSummaries, this.sessions, this.agents, this.audio,
73
76
  this.workflows, this.integrationActions, this.logs, this.debug, this.externalIntegrations,
74
- this.websocket, this.reports, this.patients
77
+ this.websocket, this.reports, this.patients, this.dataStrategies
75
78
  ];
76
79
 
77
80
  // Auto-initialize the SDK
@@ -462,6 +465,10 @@ export class ApiSDK extends BaseClient {
462
465
  return this.sessions.setAudioStreamStatus(...args);
463
466
  }
464
467
 
468
+ public async forwardToTiaki(...args: Parameters<SessionModule['forwardToTiaki']>) {
469
+ return this.sessions.forwardToTiaki(...args);
470
+ }
471
+
465
472
  // Agent methods
466
473
  public async createAgent(...args: Parameters<AgentModule['createAgent']>) {
467
474
  return this.agents.createAgent(...args);
@@ -795,4 +802,29 @@ export class ApiSDK extends BaseClient {
795
802
  return this.patients.getPatientsFromIntegration(...args);
796
803
  }
797
804
 
805
+ // DataStrategy methods
806
+ public async createDataStrategy(...args: Parameters<DataStrategyModule['createDataStrategy']>) {
807
+ return this.dataStrategies.createDataStrategy(...args);
808
+ }
809
+
810
+ public async getDataStrategies(...args: Parameters<DataStrategyModule['getDataStrategies']>) {
811
+ return this.dataStrategies.getDataStrategies(...args);
812
+ }
813
+
814
+ public async getDataStrategy(...args: Parameters<DataStrategyModule['getDataStrategy']>) {
815
+ return this.dataStrategies.getDataStrategy(...args);
816
+ }
817
+
818
+ public async getDataStrategyByOrganization(...args: Parameters<DataStrategyModule['getDataStrategyByOrganization']>) {
819
+ return this.dataStrategies.getDataStrategyByOrganization(...args);
820
+ }
821
+
822
+ public async updateDataStrategy(...args: Parameters<DataStrategyModule['updateDataStrategy']>) {
823
+ return this.dataStrategies.updateDataStrategy(...args);
824
+ }
825
+
826
+ public async deleteDataStrategy(...args: Parameters<DataStrategyModule['deleteDataStrategy']>) {
827
+ return this.dataStrategies.deleteDataStrategy(...args);
828
+ }
829
+
798
830
  }
@@ -0,0 +1,32 @@
1
+ import { Organization } from './organization.types';
2
+
3
+ // DataStrategy types
4
+ export interface DataStrategy {
5
+ id: string;
6
+ daysToKeepTranscriptions: number | null;
7
+ daysToKeepAudio: number | null;
8
+ daysToKeepSummaries: number | null;
9
+ daysToKeepSessions: number | null;
10
+ createdAt: string;
11
+ updatedAt: string;
12
+ organizationId: string;
13
+
14
+ // Relationships (populated by API)
15
+ organization?: Organization;
16
+ }
17
+
18
+ // DataStrategy DTOs
19
+ export interface CreateDataStrategyDto {
20
+ organizationId: string;
21
+ daysToKeepTranscriptions?: number | null;
22
+ daysToKeepAudio?: number | null;
23
+ daysToKeepSummaries?: number | null;
24
+ daysToKeepSessions?: number | null;
25
+ }
26
+
27
+ export interface UpdateDataStrategyDto {
28
+ daysToKeepTranscriptions?: number | null;
29
+ daysToKeepAudio?: number | null;
30
+ daysToKeepSummaries?: number | null;
31
+ daysToKeepSessions?: number | null;
32
+ }
@@ -15,3 +15,4 @@ export * from './external-integration.types';
15
15
  export * from './websocket.types';
16
16
  export * from './reports.types';
17
17
  export * from './patient.types';
18
+ export * from './data-strategy.types';
@@ -77,3 +77,8 @@ export interface SetAudioStreamStatusDto {
77
77
  sessionId: string;
78
78
  audioStreamStatus: AudioStreamStatus;
79
79
  }
80
+
81
+ export interface ForwardToTiakiResponse {
82
+ success: boolean;
83
+ message?: string;
84
+ }
package/src/sdk/urls.ts CHANGED
@@ -70,6 +70,9 @@ const urls = {
70
70
 
71
71
  // Patients
72
72
  patients: '/patients',
73
+
74
+ // Data Strategies
75
+ dataStrategies: '/data-strategies',
73
76
  }
74
77
 
75
78
  export default urls;