@dxos/plugin-youtube 0.8.3

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.
Files changed (199) hide show
  1. package/LICENSE +21 -0
  2. package/dist/lib/browser/ChannelArticle-CDQR4BBY.mjs +90 -0
  3. package/dist/lib/browser/ChannelArticle-CDQR4BBY.mjs.map +7 -0
  4. package/dist/lib/browser/ChannelSettings-ZYUNW3VS.mjs +28 -0
  5. package/dist/lib/browser/ChannelSettings-ZYUNW3VS.mjs.map +7 -0
  6. package/dist/lib/browser/VideoArticle-FC4A6E7B.mjs +76 -0
  7. package/dist/lib/browser/VideoArticle-FC4A6E7B.mjs.map +7 -0
  8. package/dist/lib/browser/VideoCard-CCPXDCB7.mjs +64 -0
  9. package/dist/lib/browser/VideoCard-CCPXDCB7.mjs.map +7 -0
  10. package/dist/lib/browser/app-graph-builder-MJY6A6SN.mjs +195 -0
  11. package/dist/lib/browser/app-graph-builder-MJY6A6SN.mjs.map +7 -0
  12. package/dist/lib/browser/blueprint-definition-FRYUYJ22.mjs +22 -0
  13. package/dist/lib/browser/blueprint-definition-FRYUYJ22.mjs.map +7 -0
  14. package/dist/lib/browser/blueprints/index.mjs +13 -0
  15. package/dist/lib/browser/blueprints/index.mjs.map +7 -0
  16. package/dist/lib/browser/chunk-C26XKDK2.mjs +355 -0
  17. package/dist/lib/browser/chunk-C26XKDK2.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-DFRSBBSO.mjs +21 -0
  19. package/dist/lib/browser/chunk-DFRSBBSO.mjs.map +7 -0
  20. package/dist/lib/browser/chunk-GFRR4TTX.mjs +72 -0
  21. package/dist/lib/browser/chunk-GFRR4TTX.mjs.map +7 -0
  22. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  23. package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
  24. package/dist/lib/browser/chunk-MUE22YUM.mjs +57 -0
  25. package/dist/lib/browser/chunk-MUE22YUM.mjs.map +7 -0
  26. package/dist/lib/browser/chunk-P67QEKBQ.mjs +72 -0
  27. package/dist/lib/browser/chunk-P67QEKBQ.mjs.map +7 -0
  28. package/dist/lib/browser/chunk-YMDT37TA.mjs +62 -0
  29. package/dist/lib/browser/chunk-YMDT37TA.mjs.map +7 -0
  30. package/dist/lib/browser/chunk-Z3DGTMKC.mjs +8 -0
  31. package/dist/lib/browser/chunk-Z3DGTMKC.mjs.map +7 -0
  32. package/dist/lib/browser/clear-synced-videos-EVMJIZPD.mjs +66 -0
  33. package/dist/lib/browser/clear-synced-videos-EVMJIZPD.mjs.map +7 -0
  34. package/dist/lib/browser/index.mjs +153 -0
  35. package/dist/lib/browser/index.mjs.map +7 -0
  36. package/dist/lib/browser/meta.json +1 -0
  37. package/dist/lib/browser/react-surface-EDA5VYDC.mjs +77 -0
  38. package/dist/lib/browser/react-surface-EDA5VYDC.mjs.map +7 -0
  39. package/dist/lib/browser/sync-423Q4BDD.mjs +360 -0
  40. package/dist/lib/browser/sync-423Q4BDD.mjs.map +7 -0
  41. package/dist/lib/browser/types/index.mjs +14 -0
  42. package/dist/lib/browser/types/index.mjs.map +7 -0
  43. package/dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs +91 -0
  44. package/dist/lib/node-esm/ChannelArticle-GQ64BO7V.mjs.map +7 -0
  45. package/dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs +29 -0
  46. package/dist/lib/node-esm/ChannelSettings-DM2HWNKO.mjs.map +7 -0
  47. package/dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs +77 -0
  48. package/dist/lib/node-esm/VideoArticle-WLTWZO3K.mjs.map +7 -0
  49. package/dist/lib/node-esm/VideoCard-FOWQZK75.mjs +65 -0
  50. package/dist/lib/node-esm/VideoCard-FOWQZK75.mjs.map +7 -0
  51. package/dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs +196 -0
  52. package/dist/lib/node-esm/app-graph-builder-IU5TBAXN.mjs.map +7 -0
  53. package/dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs +23 -0
  54. package/dist/lib/node-esm/blueprint-definition-W264MZ3D.mjs.map +7 -0
  55. package/dist/lib/node-esm/blueprints/index.mjs +14 -0
  56. package/dist/lib/node-esm/blueprints/index.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-5KNC2JMP.mjs +58 -0
  58. package/dist/lib/node-esm/chunk-5KNC2JMP.mjs.map +7 -0
  59. package/dist/lib/node-esm/chunk-6BUJ2DQX.mjs +73 -0
  60. package/dist/lib/node-esm/chunk-6BUJ2DQX.mjs.map +7 -0
  61. package/dist/lib/node-esm/chunk-CX6MV3QM.mjs +23 -0
  62. package/dist/lib/node-esm/chunk-CX6MV3QM.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-CZSLL3XQ.mjs +63 -0
  64. package/dist/lib/node-esm/chunk-CZSLL3XQ.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  66. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  67. package/dist/lib/node-esm/chunk-JM5SBBP5.mjs +356 -0
  68. package/dist/lib/node-esm/chunk-JM5SBBP5.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-JSGRZMG3.mjs +73 -0
  70. package/dist/lib/node-esm/chunk-JSGRZMG3.mjs.map +7 -0
  71. package/dist/lib/node-esm/chunk-M4S6BE47.mjs +10 -0
  72. package/dist/lib/node-esm/chunk-M4S6BE47.mjs.map +7 -0
  73. package/dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs +67 -0
  74. package/dist/lib/node-esm/clear-synced-videos-5UCH6XHL.mjs.map +7 -0
  75. package/dist/lib/node-esm/index.mjs +154 -0
  76. package/dist/lib/node-esm/index.mjs.map +7 -0
  77. package/dist/lib/node-esm/meta.json +1 -0
  78. package/dist/lib/node-esm/react-surface-5DJAQPHJ.mjs +78 -0
  79. package/dist/lib/node-esm/react-surface-5DJAQPHJ.mjs.map +7 -0
  80. package/dist/lib/node-esm/sync-CEF5DX2J.mjs +361 -0
  81. package/dist/lib/node-esm/sync-CEF5DX2J.mjs.map +7 -0
  82. package/dist/lib/node-esm/types/index.mjs +15 -0
  83. package/dist/lib/node-esm/types/index.mjs.map +7 -0
  84. package/dist/types/src/YouTubePlugin.d.ts +3 -0
  85. package/dist/types/src/YouTubePlugin.d.ts.map +1 -0
  86. package/dist/types/src/blueprints/index.d.ts +3 -0
  87. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  88. package/dist/types/src/blueprints/youtube.d.ts +4 -0
  89. package/dist/types/src/blueprints/youtube.d.ts.map +1 -0
  90. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  91. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  92. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  93. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  94. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +6 -0
  95. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
  96. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
  97. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
  98. package/dist/types/src/capabilities/index.d.ts +4 -0
  99. package/dist/types/src/capabilities/index.d.ts.map +1 -0
  100. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  101. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  102. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  103. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  104. package/dist/types/src/containers/ChannelArticle/ChannelArticle.d.ts +8 -0
  105. package/dist/types/src/containers/ChannelArticle/ChannelArticle.d.ts.map +1 -0
  106. package/dist/types/src/containers/ChannelArticle/index.d.ts +3 -0
  107. package/dist/types/src/containers/ChannelArticle/index.d.ts.map +1 -0
  108. package/dist/types/src/containers/ChannelSettings/ChannelSettings.d.ts +7 -0
  109. package/dist/types/src/containers/ChannelSettings/ChannelSettings.d.ts.map +1 -0
  110. package/dist/types/src/containers/ChannelSettings/index.d.ts +3 -0
  111. package/dist/types/src/containers/ChannelSettings/index.d.ts.map +1 -0
  112. package/dist/types/src/containers/VideoArticle/VideoArticle.d.ts +11 -0
  113. package/dist/types/src/containers/VideoArticle/VideoArticle.d.ts.map +1 -0
  114. package/dist/types/src/containers/VideoArticle/index.d.ts +3 -0
  115. package/dist/types/src/containers/VideoArticle/index.d.ts.map +1 -0
  116. package/dist/types/src/containers/VideoCard/VideoCard.d.ts +9 -0
  117. package/dist/types/src/containers/VideoCard/VideoCard.d.ts.map +1 -0
  118. package/dist/types/src/containers/VideoCard/index.d.ts +3 -0
  119. package/dist/types/src/containers/VideoCard/index.d.ts.map +1 -0
  120. package/dist/types/src/containers/index.d.ts +11 -0
  121. package/dist/types/src/containers/index.d.ts.map +1 -0
  122. package/dist/types/src/index.d.ts +4 -0
  123. package/dist/types/src/index.d.ts.map +1 -0
  124. package/dist/types/src/meta.d.ts +3 -0
  125. package/dist/types/src/meta.d.ts.map +1 -0
  126. package/dist/types/src/operations/apis/index.d.ts +2 -0
  127. package/dist/types/src/operations/apis/index.d.ts.map +1 -0
  128. package/dist/types/src/operations/apis/youtube/api.d.ts +251 -0
  129. package/dist/types/src/operations/apis/youtube/api.d.ts.map +1 -0
  130. package/dist/types/src/operations/apis/youtube/index.d.ts +3 -0
  131. package/dist/types/src/operations/apis/youtube/index.d.ts.map +1 -0
  132. package/dist/types/src/operations/apis/youtube/types.d.ts +493 -0
  133. package/dist/types/src/operations/apis/youtube/types.d.ts.map +1 -0
  134. package/dist/types/src/operations/clear-synced-videos.d.ts +5 -0
  135. package/dist/types/src/operations/clear-synced-videos.d.ts.map +1 -0
  136. package/dist/types/src/operations/definitions.d.ts +45 -0
  137. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  138. package/dist/types/src/operations/index.d.ts +5 -0
  139. package/dist/types/src/operations/index.d.ts.map +1 -0
  140. package/dist/types/src/operations/services/google-credentials.d.ts +35 -0
  141. package/dist/types/src/operations/services/google-credentials.d.ts.map +1 -0
  142. package/dist/types/src/operations/services/index.d.ts +2 -0
  143. package/dist/types/src/operations/services/index.d.ts.map +1 -0
  144. package/dist/types/src/operations/sync.d.ts +5 -0
  145. package/dist/types/src/operations/sync.d.ts.map +1 -0
  146. package/dist/types/src/operations/sync.test.d.ts +2 -0
  147. package/dist/types/src/operations/sync.test.d.ts.map +1 -0
  148. package/dist/types/src/operations/transcript.d.ts +12 -0
  149. package/dist/types/src/operations/transcript.d.ts.map +1 -0
  150. package/dist/types/src/translations.d.ts +49 -0
  151. package/dist/types/src/translations.d.ts.map +1 -0
  152. package/dist/types/src/types/Channel.d.ts +54 -0
  153. package/dist/types/src/types/Channel.d.ts.map +1 -0
  154. package/dist/types/src/types/Video.d.ts +41 -0
  155. package/dist/types/src/types/Video.d.ts.map +1 -0
  156. package/dist/types/src/types/index.d.ts +4 -0
  157. package/dist/types/src/types/index.d.ts.map +1 -0
  158. package/dist/types/src/types/types.d.ts +5 -0
  159. package/dist/types/src/types/types.d.ts.map +1 -0
  160. package/dist/types/tsconfig.tsbuildinfo +1 -0
  161. package/package.json +113 -0
  162. package/src/YouTubePlugin.tsx +66 -0
  163. package/src/blueprints/index.ts +7 -0
  164. package/src/blueprints/youtube.ts +52 -0
  165. package/src/capabilities/app-graph-builder/app-graph-builder.ts +148 -0
  166. package/src/capabilities/app-graph-builder/index.ts +7 -0
  167. package/src/capabilities/blueprint-definition/blueprint-definition.ts +17 -0
  168. package/src/capabilities/blueprint-definition/index.ts +7 -0
  169. package/src/capabilities/index.ts +7 -0
  170. package/src/capabilities/react-surface/index.ts +7 -0
  171. package/src/capabilities/react-surface/react-surface.tsx +54 -0
  172. package/src/containers/ChannelArticle/ChannelArticle.tsx +115 -0
  173. package/src/containers/ChannelArticle/index.ts +7 -0
  174. package/src/containers/ChannelSettings/ChannelSettings.tsx +34 -0
  175. package/src/containers/ChannelSettings/index.ts +7 -0
  176. package/src/containers/VideoArticle/VideoArticle.tsx +109 -0
  177. package/src/containers/VideoArticle/index.ts +7 -0
  178. package/src/containers/VideoCard/VideoCard.tsx +86 -0
  179. package/src/containers/VideoCard/index.ts +7 -0
  180. package/src/containers/index.ts +24 -0
  181. package/src/index.ts +8 -0
  182. package/src/meta.ts +19 -0
  183. package/src/operations/apis/index.ts +5 -0
  184. package/src/operations/apis/youtube/api.ts +149 -0
  185. package/src/operations/apis/youtube/index.ts +6 -0
  186. package/src/operations/apis/youtube/types.ts +254 -0
  187. package/src/operations/clear-synced-videos.ts +50 -0
  188. package/src/operations/definitions.ts +62 -0
  189. package/src/operations/index.ts +13 -0
  190. package/src/operations/services/google-credentials.ts +81 -0
  191. package/src/operations/services/index.ts +5 -0
  192. package/src/operations/sync.test.ts +114 -0
  193. package/src/operations/sync.ts +309 -0
  194. package/src/operations/transcript.ts +47 -0
  195. package/src/translations.ts +59 -0
  196. package/src/types/Channel.ts +80 -0
  197. package/src/types/Video.ts +67 -0
  198. package/src/types/index.ts +8 -0
  199. package/src/types/types.ts +10 -0
@@ -0,0 +1,493 @@
1
+ import * as Schema from 'effect/Schema';
2
+ declare const YouTubeError_base: Schema.TaggedErrorClass<YouTubeError, "YouTubeError", {
3
+ readonly _tag: Schema.tag<"YouTubeError">;
4
+ } & {
5
+ code: typeof Schema.Number;
6
+ message: typeof Schema.String;
7
+ status: Schema.optional<typeof Schema.String>;
8
+ }>;
9
+ /**
10
+ * YouTube API error response.
11
+ */
12
+ export declare class YouTubeError extends YouTubeError_base {
13
+ static fromErrorResponse(response: ErrorResponse): YouTubeError;
14
+ }
15
+ export declare const ErrorResponse: Schema.Struct<{
16
+ error: Schema.Struct<{
17
+ code: typeof Schema.Number;
18
+ message: typeof Schema.String;
19
+ status: Schema.optional<typeof Schema.String>;
20
+ }>;
21
+ }>;
22
+ export type ErrorResponse = Schema.Schema.Type<typeof ErrorResponse>;
23
+ /**
24
+ * YouTube channel snippet from search/channel API.
25
+ */
26
+ export declare const ChannelSnippet: Schema.Struct<{
27
+ title: typeof Schema.String;
28
+ description: Schema.optional<typeof Schema.String>;
29
+ customUrl: Schema.optional<typeof Schema.String>;
30
+ publishedAt: Schema.optional<typeof Schema.String>;
31
+ thumbnails: Schema.optional<Schema.Struct<{
32
+ default: Schema.optional<Schema.Struct<{
33
+ url: typeof Schema.String;
34
+ }>>;
35
+ medium: Schema.optional<Schema.Struct<{
36
+ url: typeof Schema.String;
37
+ }>>;
38
+ high: Schema.optional<Schema.Struct<{
39
+ url: typeof Schema.String;
40
+ }>>;
41
+ }>>;
42
+ }>;
43
+ /**
44
+ * YouTube channel item from channels API.
45
+ */
46
+ export declare const ChannelItem: Schema.Struct<{
47
+ kind: typeof Schema.String;
48
+ etag: typeof Schema.String;
49
+ id: typeof Schema.String;
50
+ snippet: Schema.optional<Schema.Struct<{
51
+ title: typeof Schema.String;
52
+ description: Schema.optional<typeof Schema.String>;
53
+ customUrl: Schema.optional<typeof Schema.String>;
54
+ publishedAt: Schema.optional<typeof Schema.String>;
55
+ thumbnails: Schema.optional<Schema.Struct<{
56
+ default: Schema.optional<Schema.Struct<{
57
+ url: typeof Schema.String;
58
+ }>>;
59
+ medium: Schema.optional<Schema.Struct<{
60
+ url: typeof Schema.String;
61
+ }>>;
62
+ high: Schema.optional<Schema.Struct<{
63
+ url: typeof Schema.String;
64
+ }>>;
65
+ }>>;
66
+ }>>;
67
+ contentDetails: Schema.optional<Schema.Struct<{
68
+ relatedPlaylists: Schema.optional<Schema.Struct<{
69
+ uploads: Schema.optional<typeof Schema.String>;
70
+ }>>;
71
+ }>>;
72
+ }>;
73
+ /**
74
+ * YouTube channels list response.
75
+ */
76
+ export declare const ChannelsResponse: Schema.Struct<{
77
+ kind: typeof Schema.String;
78
+ etag: typeof Schema.String;
79
+ pageInfo: Schema.optional<Schema.Struct<{
80
+ totalResults: typeof Schema.Number;
81
+ resultsPerPage: typeof Schema.Number;
82
+ }>>;
83
+ items: Schema.Array$<Schema.Struct<{
84
+ kind: typeof Schema.String;
85
+ etag: typeof Schema.String;
86
+ id: typeof Schema.String;
87
+ snippet: Schema.optional<Schema.Struct<{
88
+ title: typeof Schema.String;
89
+ description: Schema.optional<typeof Schema.String>;
90
+ customUrl: Schema.optional<typeof Schema.String>;
91
+ publishedAt: Schema.optional<typeof Schema.String>;
92
+ thumbnails: Schema.optional<Schema.Struct<{
93
+ default: Schema.optional<Schema.Struct<{
94
+ url: typeof Schema.String;
95
+ }>>;
96
+ medium: Schema.optional<Schema.Struct<{
97
+ url: typeof Schema.String;
98
+ }>>;
99
+ high: Schema.optional<Schema.Struct<{
100
+ url: typeof Schema.String;
101
+ }>>;
102
+ }>>;
103
+ }>>;
104
+ contentDetails: Schema.optional<Schema.Struct<{
105
+ relatedPlaylists: Schema.optional<Schema.Struct<{
106
+ uploads: Schema.optional<typeof Schema.String>;
107
+ }>>;
108
+ }>>;
109
+ }>>;
110
+ }>;
111
+ export type ChannelsResponse = Schema.Schema.Type<typeof ChannelsResponse>;
112
+ /**
113
+ * Video snippet from search/playlistItems API.
114
+ */
115
+ export declare const VideoSnippet: Schema.Struct<{
116
+ publishedAt: typeof Schema.String;
117
+ channelId: Schema.optional<typeof Schema.String>;
118
+ title: typeof Schema.String;
119
+ description: Schema.optional<typeof Schema.String>;
120
+ thumbnails: Schema.optional<Schema.Struct<{
121
+ default: Schema.optional<Schema.Struct<{
122
+ url: typeof Schema.String;
123
+ }>>;
124
+ medium: Schema.optional<Schema.Struct<{
125
+ url: typeof Schema.String;
126
+ }>>;
127
+ high: Schema.optional<Schema.Struct<{
128
+ url: typeof Schema.String;
129
+ }>>;
130
+ standard: Schema.optional<Schema.Struct<{
131
+ url: typeof Schema.String;
132
+ }>>;
133
+ maxres: Schema.optional<Schema.Struct<{
134
+ url: typeof Schema.String;
135
+ }>>;
136
+ }>>;
137
+ channelTitle: Schema.optional<typeof Schema.String>;
138
+ playlistId: Schema.optional<typeof Schema.String>;
139
+ position: Schema.optional<typeof Schema.Number>;
140
+ resourceId: Schema.optional<Schema.Struct<{
141
+ kind: typeof Schema.String;
142
+ videoId: typeof Schema.String;
143
+ }>>;
144
+ }>;
145
+ /**
146
+ * Content details for a video.
147
+ */
148
+ export declare const VideoContentDetails: Schema.Struct<{
149
+ videoId: Schema.optional<typeof Schema.String>;
150
+ videoPublishedAt: Schema.optional<typeof Schema.String>;
151
+ duration: Schema.optional<typeof Schema.String>;
152
+ }>;
153
+ /**
154
+ * Video statistics.
155
+ */
156
+ export declare const VideoStatistics: Schema.Struct<{
157
+ viewCount: Schema.optional<typeof Schema.String>;
158
+ likeCount: Schema.optional<typeof Schema.String>;
159
+ commentCount: Schema.optional<typeof Schema.String>;
160
+ }>;
161
+ /**
162
+ * Video item from videos API.
163
+ */
164
+ export declare const VideoItem: Schema.Struct<{
165
+ kind: typeof Schema.String;
166
+ etag: typeof Schema.String;
167
+ id: typeof Schema.String;
168
+ snippet: Schema.optional<Schema.Struct<{
169
+ publishedAt: typeof Schema.String;
170
+ channelId: Schema.optional<typeof Schema.String>;
171
+ title: typeof Schema.String;
172
+ description: Schema.optional<typeof Schema.String>;
173
+ thumbnails: Schema.optional<Schema.Struct<{
174
+ default: Schema.optional<Schema.Struct<{
175
+ url: typeof Schema.String;
176
+ }>>;
177
+ medium: Schema.optional<Schema.Struct<{
178
+ url: typeof Schema.String;
179
+ }>>;
180
+ high: Schema.optional<Schema.Struct<{
181
+ url: typeof Schema.String;
182
+ }>>;
183
+ standard: Schema.optional<Schema.Struct<{
184
+ url: typeof Schema.String;
185
+ }>>;
186
+ maxres: Schema.optional<Schema.Struct<{
187
+ url: typeof Schema.String;
188
+ }>>;
189
+ }>>;
190
+ channelTitle: Schema.optional<typeof Schema.String>;
191
+ playlistId: Schema.optional<typeof Schema.String>;
192
+ position: Schema.optional<typeof Schema.Number>;
193
+ resourceId: Schema.optional<Schema.Struct<{
194
+ kind: typeof Schema.String;
195
+ videoId: typeof Schema.String;
196
+ }>>;
197
+ }>>;
198
+ contentDetails: Schema.optional<Schema.Struct<{
199
+ videoId: Schema.optional<typeof Schema.String>;
200
+ videoPublishedAt: Schema.optional<typeof Schema.String>;
201
+ duration: Schema.optional<typeof Schema.String>;
202
+ }>>;
203
+ statistics: Schema.optional<Schema.Struct<{
204
+ viewCount: Schema.optional<typeof Schema.String>;
205
+ likeCount: Schema.optional<typeof Schema.String>;
206
+ commentCount: Schema.optional<typeof Schema.String>;
207
+ }>>;
208
+ }>;
209
+ export type VideoItem = Schema.Schema.Type<typeof VideoItem>;
210
+ /**
211
+ * YouTube videos list response.
212
+ */
213
+ export declare const VideosResponse: Schema.Struct<{
214
+ kind: typeof Schema.String;
215
+ etag: typeof Schema.String;
216
+ nextPageToken: Schema.optional<typeof Schema.String>;
217
+ prevPageToken: Schema.optional<typeof Schema.String>;
218
+ pageInfo: Schema.optional<Schema.Struct<{
219
+ totalResults: typeof Schema.Number;
220
+ resultsPerPage: typeof Schema.Number;
221
+ }>>;
222
+ items: Schema.Array$<Schema.Struct<{
223
+ kind: typeof Schema.String;
224
+ etag: typeof Schema.String;
225
+ id: typeof Schema.String;
226
+ snippet: Schema.optional<Schema.Struct<{
227
+ publishedAt: typeof Schema.String;
228
+ channelId: Schema.optional<typeof Schema.String>;
229
+ title: typeof Schema.String;
230
+ description: Schema.optional<typeof Schema.String>;
231
+ thumbnails: Schema.optional<Schema.Struct<{
232
+ default: Schema.optional<Schema.Struct<{
233
+ url: typeof Schema.String;
234
+ }>>;
235
+ medium: Schema.optional<Schema.Struct<{
236
+ url: typeof Schema.String;
237
+ }>>;
238
+ high: Schema.optional<Schema.Struct<{
239
+ url: typeof Schema.String;
240
+ }>>;
241
+ standard: Schema.optional<Schema.Struct<{
242
+ url: typeof Schema.String;
243
+ }>>;
244
+ maxres: Schema.optional<Schema.Struct<{
245
+ url: typeof Schema.String;
246
+ }>>;
247
+ }>>;
248
+ channelTitle: Schema.optional<typeof Schema.String>;
249
+ playlistId: Schema.optional<typeof Schema.String>;
250
+ position: Schema.optional<typeof Schema.Number>;
251
+ resourceId: Schema.optional<Schema.Struct<{
252
+ kind: typeof Schema.String;
253
+ videoId: typeof Schema.String;
254
+ }>>;
255
+ }>>;
256
+ contentDetails: Schema.optional<Schema.Struct<{
257
+ videoId: Schema.optional<typeof Schema.String>;
258
+ videoPublishedAt: Schema.optional<typeof Schema.String>;
259
+ duration: Schema.optional<typeof Schema.String>;
260
+ }>>;
261
+ statistics: Schema.optional<Schema.Struct<{
262
+ viewCount: Schema.optional<typeof Schema.String>;
263
+ likeCount: Schema.optional<typeof Schema.String>;
264
+ commentCount: Schema.optional<typeof Schema.String>;
265
+ }>>;
266
+ }>>;
267
+ }>;
268
+ export type VideosResponse = Schema.Schema.Type<typeof VideosResponse>;
269
+ /**
270
+ * Playlist item from playlistItems API.
271
+ */
272
+ export declare const PlaylistItem: Schema.Struct<{
273
+ kind: typeof Schema.String;
274
+ etag: typeof Schema.String;
275
+ id: typeof Schema.String;
276
+ snippet: Schema.optional<Schema.Struct<{
277
+ publishedAt: typeof Schema.String;
278
+ channelId: Schema.optional<typeof Schema.String>;
279
+ title: typeof Schema.String;
280
+ description: Schema.optional<typeof Schema.String>;
281
+ thumbnails: Schema.optional<Schema.Struct<{
282
+ default: Schema.optional<Schema.Struct<{
283
+ url: typeof Schema.String;
284
+ }>>;
285
+ medium: Schema.optional<Schema.Struct<{
286
+ url: typeof Schema.String;
287
+ }>>;
288
+ high: Schema.optional<Schema.Struct<{
289
+ url: typeof Schema.String;
290
+ }>>;
291
+ standard: Schema.optional<Schema.Struct<{
292
+ url: typeof Schema.String;
293
+ }>>;
294
+ maxres: Schema.optional<Schema.Struct<{
295
+ url: typeof Schema.String;
296
+ }>>;
297
+ }>>;
298
+ channelTitle: Schema.optional<typeof Schema.String>;
299
+ playlistId: Schema.optional<typeof Schema.String>;
300
+ position: Schema.optional<typeof Schema.Number>;
301
+ resourceId: Schema.optional<Schema.Struct<{
302
+ kind: typeof Schema.String;
303
+ videoId: typeof Schema.String;
304
+ }>>;
305
+ }>>;
306
+ contentDetails: Schema.optional<Schema.Struct<{
307
+ videoId: Schema.optional<typeof Schema.String>;
308
+ videoPublishedAt: Schema.optional<typeof Schema.String>;
309
+ duration: Schema.optional<typeof Schema.String>;
310
+ }>>;
311
+ }>;
312
+ /**
313
+ * YouTube playlist items response.
314
+ */
315
+ export declare const PlaylistItemsResponse: Schema.Struct<{
316
+ kind: typeof Schema.String;
317
+ etag: typeof Schema.String;
318
+ nextPageToken: Schema.optional<typeof Schema.String>;
319
+ prevPageToken: Schema.optional<typeof Schema.String>;
320
+ pageInfo: Schema.optional<Schema.Struct<{
321
+ totalResults: typeof Schema.Number;
322
+ resultsPerPage: typeof Schema.Number;
323
+ }>>;
324
+ items: Schema.Array$<Schema.Struct<{
325
+ kind: typeof Schema.String;
326
+ etag: typeof Schema.String;
327
+ id: typeof Schema.String;
328
+ snippet: Schema.optional<Schema.Struct<{
329
+ publishedAt: typeof Schema.String;
330
+ channelId: Schema.optional<typeof Schema.String>;
331
+ title: typeof Schema.String;
332
+ description: Schema.optional<typeof Schema.String>;
333
+ thumbnails: Schema.optional<Schema.Struct<{
334
+ default: Schema.optional<Schema.Struct<{
335
+ url: typeof Schema.String;
336
+ }>>;
337
+ medium: Schema.optional<Schema.Struct<{
338
+ url: typeof Schema.String;
339
+ }>>;
340
+ high: Schema.optional<Schema.Struct<{
341
+ url: typeof Schema.String;
342
+ }>>;
343
+ standard: Schema.optional<Schema.Struct<{
344
+ url: typeof Schema.String;
345
+ }>>;
346
+ maxres: Schema.optional<Schema.Struct<{
347
+ url: typeof Schema.String;
348
+ }>>;
349
+ }>>;
350
+ channelTitle: Schema.optional<typeof Schema.String>;
351
+ playlistId: Schema.optional<typeof Schema.String>;
352
+ position: Schema.optional<typeof Schema.Number>;
353
+ resourceId: Schema.optional<Schema.Struct<{
354
+ kind: typeof Schema.String;
355
+ videoId: typeof Schema.String;
356
+ }>>;
357
+ }>>;
358
+ contentDetails: Schema.optional<Schema.Struct<{
359
+ videoId: Schema.optional<typeof Schema.String>;
360
+ videoPublishedAt: Schema.optional<typeof Schema.String>;
361
+ duration: Schema.optional<typeof Schema.String>;
362
+ }>>;
363
+ }>>;
364
+ }>;
365
+ export type PlaylistItemsResponse = Schema.Schema.Type<typeof PlaylistItemsResponse>;
366
+ /**
367
+ * Search result item.
368
+ */
369
+ export declare const SearchItem: Schema.Struct<{
370
+ kind: typeof Schema.String;
371
+ etag: typeof Schema.String;
372
+ id: Schema.Struct<{
373
+ kind: typeof Schema.String;
374
+ videoId: Schema.optional<typeof Schema.String>;
375
+ channelId: Schema.optional<typeof Schema.String>;
376
+ playlistId: Schema.optional<typeof Schema.String>;
377
+ }>;
378
+ snippet: Schema.optional<Schema.Struct<{
379
+ publishedAt: typeof Schema.String;
380
+ channelId: Schema.optional<typeof Schema.String>;
381
+ title: typeof Schema.String;
382
+ description: Schema.optional<typeof Schema.String>;
383
+ thumbnails: Schema.optional<Schema.Struct<{
384
+ default: Schema.optional<Schema.Struct<{
385
+ url: typeof Schema.String;
386
+ }>>;
387
+ medium: Schema.optional<Schema.Struct<{
388
+ url: typeof Schema.String;
389
+ }>>;
390
+ high: Schema.optional<Schema.Struct<{
391
+ url: typeof Schema.String;
392
+ }>>;
393
+ standard: Schema.optional<Schema.Struct<{
394
+ url: typeof Schema.String;
395
+ }>>;
396
+ maxres: Schema.optional<Schema.Struct<{
397
+ url: typeof Schema.String;
398
+ }>>;
399
+ }>>;
400
+ channelTitle: Schema.optional<typeof Schema.String>;
401
+ playlistId: Schema.optional<typeof Schema.String>;
402
+ position: Schema.optional<typeof Schema.Number>;
403
+ resourceId: Schema.optional<Schema.Struct<{
404
+ kind: typeof Schema.String;
405
+ videoId: typeof Schema.String;
406
+ }>>;
407
+ }>>;
408
+ }>;
409
+ /**
410
+ * YouTube search response.
411
+ */
412
+ export declare const SearchResponse: Schema.Struct<{
413
+ kind: typeof Schema.String;
414
+ etag: typeof Schema.String;
415
+ nextPageToken: Schema.optional<typeof Schema.String>;
416
+ prevPageToken: Schema.optional<typeof Schema.String>;
417
+ pageInfo: Schema.optional<Schema.Struct<{
418
+ totalResults: typeof Schema.Number;
419
+ resultsPerPage: typeof Schema.Number;
420
+ }>>;
421
+ items: Schema.Array$<Schema.Struct<{
422
+ kind: typeof Schema.String;
423
+ etag: typeof Schema.String;
424
+ id: Schema.Struct<{
425
+ kind: typeof Schema.String;
426
+ videoId: Schema.optional<typeof Schema.String>;
427
+ channelId: Schema.optional<typeof Schema.String>;
428
+ playlistId: Schema.optional<typeof Schema.String>;
429
+ }>;
430
+ snippet: Schema.optional<Schema.Struct<{
431
+ publishedAt: typeof Schema.String;
432
+ channelId: Schema.optional<typeof Schema.String>;
433
+ title: typeof Schema.String;
434
+ description: Schema.optional<typeof Schema.String>;
435
+ thumbnails: Schema.optional<Schema.Struct<{
436
+ default: Schema.optional<Schema.Struct<{
437
+ url: typeof Schema.String;
438
+ }>>;
439
+ medium: Schema.optional<Schema.Struct<{
440
+ url: typeof Schema.String;
441
+ }>>;
442
+ high: Schema.optional<Schema.Struct<{
443
+ url: typeof Schema.String;
444
+ }>>;
445
+ standard: Schema.optional<Schema.Struct<{
446
+ url: typeof Schema.String;
447
+ }>>;
448
+ maxres: Schema.optional<Schema.Struct<{
449
+ url: typeof Schema.String;
450
+ }>>;
451
+ }>>;
452
+ channelTitle: Schema.optional<typeof Schema.String>;
453
+ playlistId: Schema.optional<typeof Schema.String>;
454
+ position: Schema.optional<typeof Schema.Number>;
455
+ resourceId: Schema.optional<Schema.Struct<{
456
+ kind: typeof Schema.String;
457
+ videoId: typeof Schema.String;
458
+ }>>;
459
+ }>>;
460
+ }>>;
461
+ }>;
462
+ export type SearchResponse = Schema.Schema.Type<typeof SearchResponse>;
463
+ /**
464
+ * Caption track from captions.list.
465
+ */
466
+ export declare const CaptionResource: Schema.Struct<{
467
+ id: typeof Schema.String;
468
+ snippet: Schema.optional<Schema.Struct<{
469
+ videoId: Schema.optional<typeof Schema.String>;
470
+ language: Schema.optional<typeof Schema.String>;
471
+ name: Schema.optional<typeof Schema.String>;
472
+ trackKind: Schema.optional<typeof Schema.String>;
473
+ }>>;
474
+ }>;
475
+ /**
476
+ * YouTube captions.list response.
477
+ */
478
+ export declare const CaptionsListResponse: Schema.Struct<{
479
+ kind: typeof Schema.String;
480
+ etag: typeof Schema.String;
481
+ items: Schema.optional<Schema.Array$<Schema.Struct<{
482
+ id: typeof Schema.String;
483
+ snippet: Schema.optional<Schema.Struct<{
484
+ videoId: Schema.optional<typeof Schema.String>;
485
+ language: Schema.optional<typeof Schema.String>;
486
+ name: Schema.optional<typeof Schema.String>;
487
+ trackKind: Schema.optional<typeof Schema.String>;
488
+ }>>;
489
+ }>>>;
490
+ }>;
491
+ export type CaptionsListResponse = Schema.Schema.Type<typeof CaptionsListResponse>;
492
+ export {};
493
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/operations/apis/youtube/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;;;;;;;;AAExC;;GAEG;AACH,qBAAa,YAAa,SAAQ,iBAIhC;IACA,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,aAAa;CAOjD;AAED,eAAO,MAAM,aAAa;;;;;;EAMxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;EAYzB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;EActB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU3B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBvB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;EAI9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe;;;;EAI1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOpB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;AAE7D;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,cAAc,CAAC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMvB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYhC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAErF;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUrB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,cAAc,CAAC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;EAU1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Operation } from '@dxos/operation';
2
+ import { ClearSyncedVideos } from './definitions';
3
+ declare const handler: Operation.WithHandler<typeof ClearSyncedVideos>;
4
+ export default handler;
5
+ //# sourceMappingURL=clear-synced-videos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clear-synced-videos.d.ts","sourceRoot":"","sources":["../../../../src/operations/clear-synced-videos.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAiC5D,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { Operation } from '@dxos/operation';
2
+ import { Database, Feed } from '@dxos/echo';
3
+ import { CredentialsService } from '@dxos/functions';
4
+ export declare const Sync: Operation.Definition<{
5
+ readonly channel: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
6
+ readonly name?: string | undefined;
7
+ readonly channelId?: string | undefined;
8
+ readonly channelUrl?: string | undefined;
9
+ readonly feed: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
10
+ readonly kind?: string | undefined;
11
+ readonly name?: string | undefined;
12
+ }>;
13
+ readonly lastSyncedAt?: string | undefined;
14
+ readonly accessToken?: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
15
+ readonly note?: string | undefined;
16
+ readonly source: string;
17
+ readonly token: string;
18
+ }> | undefined;
19
+ }>;
20
+ readonly restrictedMode?: boolean | undefined;
21
+ readonly includeTranscripts?: boolean | undefined;
22
+ }, {
23
+ readonly channelTitle?: string | undefined;
24
+ readonly newVideos: number;
25
+ }, CredentialsService | Database.Service | Feed.Service>;
26
+ export declare const ClearSyncedVideos: Operation.Definition<{
27
+ readonly channel: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
28
+ readonly name?: string | undefined;
29
+ readonly channelId?: string | undefined;
30
+ readonly channelUrl?: string | undefined;
31
+ readonly feed: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
32
+ readonly kind?: string | undefined;
33
+ readonly name?: string | undefined;
34
+ }>;
35
+ readonly lastSyncedAt?: string | undefined;
36
+ readonly accessToken?: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
37
+ readonly note?: string | undefined;
38
+ readonly source: string;
39
+ readonly token: string;
40
+ }> | undefined;
41
+ }>;
42
+ }, {
43
+ readonly removedVideos: number;
44
+ }, Database.Service | Feed.Service>;
45
+ //# sourceMappingURL=definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../../src/operations/definitions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAO,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrD,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;wDA+Bf,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;mCAgB5B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { OperationHandlerSet } from '@dxos/operation';
2
+ export { YouTube } from './apis';
3
+ export * from './definitions';
4
+ export declare const YouTubeHandlers: OperationHandlerSet.OperationHandlerSet;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/operations/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,cAAc,eAAe,CAAC;AAE9B,eAAO,MAAM,eAAe,yCAG3B,CAAC"}
@@ -0,0 +1,35 @@
1
+ import * as Context from 'effect/Context';
2
+ import * as Effect from 'effect/Effect';
3
+ import * as Layer from 'effect/Layer';
4
+ import { type Ref } from '@dxos/echo';
5
+ import { CredentialsService } from '@dxos/functions';
6
+ import type * as Channel from '../../types/Channel';
7
+ declare const GoogleCredentials_base: Context.TagClass<GoogleCredentials, "GoogleCredentials", {
8
+ /** Returns the Google API token. */
9
+ get: () => Effect.Effect<string, never, CredentialsService>;
10
+ }>;
11
+ /**
12
+ * Service for accessing Google API credentials.
13
+ * Provides the Google API token either from an object's access token or falls back to database credentials.
14
+ */
15
+ export declare class GoogleCredentials extends GoogleCredentials_base {
16
+ /**
17
+ * Creates a credentials layer from a channel.
18
+ * Pre-loads the access token during layer construction.
19
+ */
20
+ static fromChannel: (channel: Channel.YouTubeChannel) => Layer.Layer<GoogleCredentials, import("@dxos/echo/Err").ObjectNotFoundError, never>;
21
+ /**
22
+ * Creates a credentials layer from a channel ref.
23
+ * Loads the channel and pre-loads the access token during layer construction.
24
+ */
25
+ static fromChannelRef: (channelRef: Ref.Ref<Channel.YouTubeChannel>) => Layer.Layer<GoogleCredentials, import("@dxos/echo/Err").ObjectNotFoundError, never>;
26
+ /**
27
+ * Default layer that uses database credentials.
28
+ * Use this for operations that don't have an associated channel.
29
+ */
30
+ static default: Layer.Layer<GoogleCredentials, never, never>;
31
+ /** Convenience accessor - returns the Google API token. */
32
+ static get: () => Effect.Effect<string, never, GoogleCredentials | CredentialsService>;
33
+ }
34
+ export {};
35
+ //# sourceMappingURL=google-credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-credentials.d.ts","sourceRoot":"","sources":["../../../../../src/operations/services/google-credentials.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAY,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrD,OAAO,KAAK,KAAK,OAAO,MAAM,qBAAqB,CAAC;;IAoChD,oCAAoC;SAC/B,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,kBAAkB,CAAC;;AAT/D;;;GAGG;AAEH,qBAAa,iBAAkB,SAAQ,sBAMpC;IACD;;;OAGG;IACH,MAAM,CAAC,WAAW,GAAI,SAAS,OAAO,CAAC,cAAc,yFACuD;IAE5G;;;OAGG;IACH,MAAM,CAAC,cAAc,GAAI,YAAY,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,yFAMhE;IAEJ;;;OAGG;IACH,MAAM,CAAC,OAAO,+CAA4D;IAE1E,2DAA2D;IAC3D,MAAM,CAAC,GAAG,6EAAuE;CAClF"}
@@ -0,0 +1,2 @@
1
+ export * from './google-credentials';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/operations/services/index.ts"],"names":[],"mappings":"AAIA,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Operation } from '@dxos/operation';
2
+ import { Sync } from './definitions';
3
+ declare const handler: Operation.WithHandler<typeof Sync>;
4
+ export default handler;
5
+ //# sourceMappingURL=sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../../src/operations/sync.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAK5C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAIrC,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,IAAI,CAkD/C,CAAC;AA0OF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sync.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.test.d.ts","sourceRoot":"","sources":["../../../../src/operations/sync.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import type { TranscriptSegment } from '../types/Video';
3
+ export type TranscriptResult = {
4
+ segments: TranscriptSegment[];
5
+ fullText: string;
6
+ };
7
+ /**
8
+ * Fetches captions for a YouTube video using youtube-caption-extractor.
9
+ * Works in both browser and Node/edge environments.
10
+ */
11
+ export declare const fetchTranscript: (videoId: string, lang?: string) => Effect.Effect<TranscriptResult | undefined>;
12
+ //# sourceMappingURL=transcript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../../../src/operations/transcript.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,EAAE,OAAO,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,GAAG,SAAS,CA2BxG,CAAC"}