@webex/internal-plugin-call-ai-summary 0.0.0-next.1

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.
package/src/types.ts ADDED
@@ -0,0 +1,154 @@
1
+ /*!
2
+ * Copyright (c) 2015-2025 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+
5
+ // --- Pragya Response DTOs ---
6
+
7
+ /**
8
+ * Summary data URLs from a Pragya container.
9
+ */
10
+ export interface PragyaSummaryData {
11
+ /** Status of the summary (e.g., "Active") */
12
+ status: string;
13
+ /** Full summary URL (AI Bridge) */
14
+ summaryUrl: string;
15
+ /** Transcript URL (AI Bridge) */
16
+ transcriptUrl: string;
17
+ /** Whether summarization runs after call ends */
18
+ summarizeAfterCall: boolean;
19
+ /** Notes-specific URL (may not be present in all API versions) */
20
+ notesUrl?: string;
21
+ /** Action items URL (may not be present in all API versions) */
22
+ actionItemsUrl?: string;
23
+ }
24
+
25
+ /**
26
+ * Complete Pragya container response.
27
+ */
28
+ export interface PragyaContainerResponse {
29
+ /** Summary data with content URLs */
30
+ summaryData: PragyaSummaryData;
31
+ /** KMS encryption key URL for decrypting content */
32
+ encryptionKeyUrl: string;
33
+ /** KMS resource object URL */
34
+ kmsResourceObjectUrl: string;
35
+ /** ACL URL for access control */
36
+ aclUrl: string;
37
+ /** Fork session ID */
38
+ forkSessionId: string;
39
+ /** Call session ID */
40
+ callSessionId: string;
41
+ /** Owner user ID */
42
+ ownerUserId: string;
43
+ /** Organization ID */
44
+ orgId: string;
45
+ /** Call start time */
46
+ start: string;
47
+ /** Call end time */
48
+ end: string;
49
+ }
50
+
51
+ // --- Request DTOs ---
52
+
53
+ /**
54
+ * Options for resolving a Pragya container.
55
+ */
56
+ export interface GetContainerOptions {
57
+ /** Pragya container ID (from Janus extensionPayload.callingContainerIds) */
58
+ containerId: string;
59
+ }
60
+
61
+ /**
62
+ * Options for fetching summary content.
63
+ * Requires the resolved Pragya container info.
64
+ */
65
+ export interface GetSummaryContentOptions {
66
+ /** The resolved Pragya container response */
67
+ containerInfo: PragyaContainerResponse;
68
+ }
69
+
70
+ // --- Summary Response DTOs ---
71
+
72
+ /**
73
+ * Decrypted AI-generated summary content.
74
+ * Contains all three content types returned by the summary API.
75
+ */
76
+ export interface SummaryContent {
77
+ /** Unique identifier */
78
+ id: string;
79
+ /** Decrypted full note content */
80
+ note: string;
81
+ /** Decrypted short note content */
82
+ shortNote: string;
83
+ /** Decrypted action item snippets */
84
+ actionItems: ActionItemSnippet[];
85
+ /** Feedback URL (if available) */
86
+ feedbackUrl?: string;
87
+ }
88
+
89
+ /**
90
+ * Decrypted AI-generated notes.
91
+ */
92
+ export interface SummaryNotes {
93
+ /** Unique identifier */
94
+ id: string;
95
+ /** Decrypted notes content */
96
+ content: string;
97
+ /** Feedback URL (if available) */
98
+ feedbackUrl?: string;
99
+ }
100
+
101
+ /**
102
+ * Single action item snippet.
103
+ */
104
+ export interface ActionItemSnippet {
105
+ /** Unique identifier */
106
+ id: string;
107
+ /** User-edited version (if available) */
108
+ editedContent?: string;
109
+ /** Decrypted AI-generated content */
110
+ aiGeneratedContent: string;
111
+ }
112
+
113
+ /**
114
+ * Decrypted AI-generated action items.
115
+ */
116
+ export interface SummaryActionItems {
117
+ /** Unique identifier (absent when no action items exist) */
118
+ id?: string;
119
+ /** Array of action item snippets */
120
+ snippets: ActionItemSnippet[];
121
+ /** Feedback URL (if available) */
122
+ feedbackUrl?: string;
123
+ }
124
+
125
+ /**
126
+ * Single decrypted transcript snippet.
127
+ */
128
+ export interface TranscriptSnippet {
129
+ /** Start time in milliseconds */
130
+ startTime: string;
131
+ /** End time in milliseconds */
132
+ endTime: string;
133
+ /** Decrypted transcript content */
134
+ content: string;
135
+ /** Audio CSI identifier */
136
+ audioCSI?: string;
137
+ /** Speaker information */
138
+ speaker?: {
139
+ speakerName: string;
140
+ speakerId: string;
141
+ };
142
+ }
143
+
144
+ /**
145
+ * Decrypted transcript response.
146
+ */
147
+ export interface TranscriptContent {
148
+ /** Unique identifier */
149
+ id: string;
150
+ /** Total number of snippets */
151
+ totalCount: number;
152
+ /** Decrypted transcript snippets */
153
+ snippets: TranscriptSnippet[];
154
+ }