@satrush/api 0.1.1 → 0.1.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.
package/dist/index.cjs CHANGED
@@ -29,6 +29,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  // src/index.ts
30
30
  var index_exports = {};
31
31
  __export(index_exports, {
32
+ EpochStateDto: () => EpochStateDto,
33
+ NotificationEntity: () => NotificationEntity,
34
+ OneBtcStateDto: () => OneBtcStateDto,
32
35
  RoundStateDto: () => RoundStateDto,
33
36
  SatrushBackendSdk: () => SatrushBackendSdk,
34
37
  SatrushBackendSdkError: () => SatrushBackendSdkError,
@@ -39,6 +42,11 @@ __export(index_exports, {
39
42
  unwrap: () => unwrap,
40
43
  zBadRequestErrorCodeErrorBody: () => zBadRequestErrorCodeErrorBody,
41
44
  zBoardDto: () => zBoardDto,
45
+ zEpochStateDto: () => zEpochStateDto,
46
+ zEpochVaultDto: () => zEpochVaultDto,
47
+ zEpochVaultEntryDto: () => zEpochVaultEntryDto,
48
+ zEpochVaultIterationDto: () => zEpochVaultIterationDto,
49
+ zEpochWinnerDto: () => zEpochWinnerDto,
42
50
  zFieldError: () => zFieldError,
43
51
  zGetBoardData: () => zGetBoardData,
44
52
  zGetBoardResponse: () => zGetBoardResponse,
@@ -50,12 +58,23 @@ __export(index_exports, {
50
58
  zI64Dto: () => zI64Dto,
51
59
  zInternalErrorCodeErrorBody: () => zInternalErrorCodeErrorBody,
52
60
  zMinerDto: () => zMinerDto,
61
+ zNotificationEntity: () => zNotificationEntity,
62
+ zOneBtcStateDto: () => zOneBtcStateDto,
63
+ zOneBtcVaultDto: () => zOneBtcVaultDto,
64
+ zOneBtcVaultEntryDto: () => zOneBtcVaultEntryDto,
65
+ zOneBtcVaultIterationDto: () => zOneBtcVaultIterationDto,
53
66
  zProfileDto: () => zProfileDto,
54
67
  zPubkeyDto: () => zPubkeyDto,
55
68
  zPublicDeploymentDto: () => zPublicDeploymentDto,
56
69
  zRoundDto: () => zRoundDto,
57
70
  zRoundStateDto: () => zRoundStateDto,
58
71
  zSatrushConfigDto: () => zSatrushConfigDto,
72
+ zSatsVaultDto: () => zSatsVaultDto,
73
+ zSnapshotDto: () => zSnapshotDto,
74
+ zSseData: () => zSseData,
75
+ zSseResponse: () => zSseResponse,
76
+ zSseResponse2: () => zSseResponse2,
77
+ zSseResponseSnapshot: () => zSseResponseSnapshot,
59
78
  zStrikeJackpotDto: () => zStrikeJackpotDto,
60
79
  zTileStakeDto: () => zTileStakeDto,
61
80
  zU128Dto: () => zU128Dto,
@@ -173,6 +192,55 @@ var buildClientParams = (args, fields) => {
173
192
  return params;
174
193
  };
175
194
 
195
+ // src/utils/sse.ts
196
+ var isRecord = (value) => !!value && typeof value === "object" && !Array.isArray(value);
197
+ var applySseResponseTransforms = async (payload) => {
198
+ if (!isRecord(payload)) return payload;
199
+ return payload;
200
+ };
201
+
202
+ // src/utils/transforms.ts
203
+ var snakeToCamel = (value) => value.replace(/_([a-z0-9])/g, (_, c) => c.toUpperCase());
204
+ var camelToSnake = (value) => value.replace(/[A-Z]/g, (c) => `_${c.toLowerCase()}`);
205
+ var isPlainObject = (value) => !!value && typeof value === "object" && Object.getPrototypeOf(value) === Object.prototype;
206
+ var mapKeysDeep = (value, mapKey) => {
207
+ if (Array.isArray(value)) {
208
+ return value.map((item) => mapKeysDeep(item, mapKey));
209
+ }
210
+ if (isPlainObject(value)) {
211
+ const next = {};
212
+ for (const [key, val] of Object.entries(value)) {
213
+ next[mapKey(key)] = mapKeysDeep(val, mapKey);
214
+ }
215
+ return next;
216
+ }
217
+ return value;
218
+ };
219
+ var shouldTransformBody = (value) => isPlainObject(value) || Array.isArray(value);
220
+ var snakecaseQuerySerializerParams = (value) => {
221
+ if (!isPlainObject(value)) return value;
222
+ if (!isPlainObject(value.parameters)) return value;
223
+ const nextParameters = {};
224
+ for (const [key, param] of Object.entries(value.parameters)) {
225
+ nextParameters[camelToSnake(key)] = param;
226
+ }
227
+ return { ...value, parameters: nextParameters };
228
+ };
229
+ var applyRequestCaseTransforms = (options) => {
230
+ const next = { ...options };
231
+ if ("query" in next && isPlainObject(next.query)) {
232
+ next.query = mapKeysDeep(next.query, camelToSnake);
233
+ }
234
+ if ("querySerializer" in next && next.querySerializer) {
235
+ next.querySerializer = snakecaseQuerySerializerParams(next.querySerializer);
236
+ }
237
+ if ("body" in next && shouldTransformBody(next.body)) {
238
+ next.body = mapKeysDeep(next.body, camelToSnake);
239
+ }
240
+ return next;
241
+ };
242
+ var applyResponseCaseTransforms = (value) => mapKeysDeep(value, snakeToCamel);
243
+
176
244
  // src/generated/core/serverSentEvents.gen.ts
177
245
  var createSseClient = ({
178
246
  onRequest,
@@ -263,9 +331,11 @@ var createSseClient = ({
263
331
  }
264
332
  }
265
333
  if (parsedJson) {
334
+ data = applyResponseCaseTransforms(data);
266
335
  if (responseValidator) {
267
336
  await responseValidator(data);
268
337
  }
338
+ data = await applySseResponseTransforms(data);
269
339
  if (responseTransformer) {
270
340
  data = await responseTransformer(data);
271
341
  }
@@ -521,48 +591,6 @@ function getValidRequestBody(options) {
521
591
  return void 0;
522
592
  }
523
593
 
524
- // src/utils/transforms.ts
525
- var snakeToCamel = (value) => value.replace(/_([a-z0-9])/g, (_, c) => c.toUpperCase());
526
- var camelToSnake = (value) => value.replace(/[A-Z]/g, (c) => `_${c.toLowerCase()}`);
527
- var isPlainObject = (value) => !!value && typeof value === "object" && Object.getPrototypeOf(value) === Object.prototype;
528
- var mapKeysDeep = (value, mapKey) => {
529
- if (Array.isArray(value)) {
530
- return value.map((item) => mapKeysDeep(item, mapKey));
531
- }
532
- if (isPlainObject(value)) {
533
- const next = {};
534
- for (const [key, val] of Object.entries(value)) {
535
- next[mapKey(key)] = mapKeysDeep(val, mapKey);
536
- }
537
- return next;
538
- }
539
- return value;
540
- };
541
- var shouldTransformBody = (value) => isPlainObject(value) || Array.isArray(value);
542
- var snakecaseQuerySerializerParams = (value) => {
543
- if (!isPlainObject(value)) return value;
544
- if (!isPlainObject(value.parameters)) return value;
545
- const nextParameters = {};
546
- for (const [key, param] of Object.entries(value.parameters)) {
547
- nextParameters[camelToSnake(key)] = param;
548
- }
549
- return { ...value, parameters: nextParameters };
550
- };
551
- var applyRequestCaseTransforms = (options) => {
552
- const next = { ...options };
553
- if ("query" in next && isPlainObject(next.query)) {
554
- next.query = mapKeysDeep(next.query, camelToSnake);
555
- }
556
- if ("querySerializer" in next && next.querySerializer) {
557
- next.querySerializer = snakecaseQuerySerializerParams(next.querySerializer);
558
- }
559
- if ("body" in next && shouldTransformBody(next.body)) {
560
- next.body = mapKeysDeep(next.body, camelToSnake);
561
- }
562
- return next;
563
- };
564
- var applyResponseCaseTransforms = (value) => mapKeysDeep(value, snakeToCamel);
565
-
566
594
  // src/generated/core/auth.gen.ts
567
595
  var getAuthToken = async (auth, callback) => {
568
596
  const token = typeof callback === "function" ? await callback(auth) : callback;
@@ -1026,6 +1054,58 @@ var roundDtoSchemaResponseTransformer = (data) => {
1026
1054
  data.tileStakes = data.tileStakes.map((item) => tileStakeDtoSchemaResponseTransformer(item));
1027
1055
  return data;
1028
1056
  };
1057
+ var epochWinnerDtoSchemaResponseTransformer = (data) => {
1058
+ data.tickets = u64DtoSchemaResponseTransformer(data.tickets);
1059
+ return data;
1060
+ };
1061
+ var epochVaultIterationDtoSchemaResponseTransformer = (data) => {
1062
+ if (data.claimableBtc) {
1063
+ data.claimableBtc = u64DtoSchemaResponseTransformer(data.claimableBtc);
1064
+ }
1065
+ if (data.claimableUsd) {
1066
+ data.claimableUsd = u64DtoSchemaResponseTransformer(data.claimableUsd);
1067
+ }
1068
+ data.totalTickets = u64DtoSchemaResponseTransformer(data.totalTickets);
1069
+ if (data.winners) {
1070
+ data.winners = data.winners.map((item) => epochWinnerDtoSchemaResponseTransformer(item));
1071
+ }
1072
+ return data;
1073
+ };
1074
+ var epochVaultDtoSchemaResponseTransformer = (data) => {
1075
+ if (data.currentIteration) {
1076
+ data.currentIteration = epochVaultIterationDtoSchemaResponseTransformer(data.currentIteration);
1077
+ }
1078
+ data.lastTriggerSlot = u64DtoSchemaResponseTransformer(data.lastTriggerSlot);
1079
+ data.pendingUsdAmount = u64DtoSchemaResponseTransformer(data.pendingUsdAmount);
1080
+ data.poolBtcAmount = u64DtoSchemaResponseTransformer(data.poolBtcAmount);
1081
+ data.poolUsdAmount = u64DtoSchemaResponseTransformer(data.poolUsdAmount);
1082
+ data.reservedBtcAmount = u64DtoSchemaResponseTransformer(data.reservedBtcAmount);
1083
+ data.reservedUsdAmount = u64DtoSchemaResponseTransformer(data.reservedUsdAmount);
1084
+ return data;
1085
+ };
1086
+ var oneBtcVaultIterationDtoSchemaResponseTransformer = (data) => {
1087
+ data.prizeBtc = u64DtoSchemaResponseTransformer(data.prizeBtc);
1088
+ data.totalTickets = u64DtoSchemaResponseTransformer(data.totalTickets);
1089
+ if (data.winningTicket) {
1090
+ data.winningTicket = u64DtoSchemaResponseTransformer(data.winningTicket);
1091
+ }
1092
+ return data;
1093
+ };
1094
+ var oneBtcVaultDtoSchemaResponseTransformer = (data) => {
1095
+ data.btcAmount = u64DtoSchemaResponseTransformer(data.btcAmount);
1096
+ if (data.currentIteration) {
1097
+ data.currentIteration = oneBtcVaultIterationDtoSchemaResponseTransformer(data.currentIteration);
1098
+ }
1099
+ data.lastTriggerSlot = u64DtoSchemaResponseTransformer(data.lastTriggerSlot);
1100
+ data.pendingUsdAmount = u64DtoSchemaResponseTransformer(data.pendingUsdAmount);
1101
+ data.reservedBtcAmount = u64DtoSchemaResponseTransformer(data.reservedBtcAmount);
1102
+ return data;
1103
+ };
1104
+ var satsVaultDtoSchemaResponseTransformer = (data) => {
1105
+ data.btcAmount = u64DtoSchemaResponseTransformer(data.btcAmount);
1106
+ data.btcShares = u64DtoSchemaResponseTransformer(data.btcShares);
1107
+ return data;
1108
+ };
1029
1109
  var strikeJackpotDtoSchemaResponseTransformer = (data) => {
1030
1110
  data.btcAmount = u64DtoSchemaResponseTransformer(data.btcAmount);
1031
1111
  data.pendingUsdAmount = u64DtoSchemaResponseTransformer(data.pendingUsdAmount);
@@ -1038,9 +1118,12 @@ var boardDtoSchemaResponseTransformer = (data) => {
1038
1118
  }
1039
1119
  data.currentSlot = u64DtoSchemaResponseTransformer(data.currentSlot);
1040
1120
  data.endSlot = u64DtoSchemaResponseTransformer(data.endSlot);
1121
+ data.epochVault = epochVaultDtoSchemaResponseTransformer(data.epochVault);
1122
+ data.oneBtcVault = oneBtcVaultDtoSchemaResponseTransformer(data.oneBtcVault);
1041
1123
  if (data.previousRound) {
1042
1124
  data.previousRound = roundDtoSchemaResponseTransformer(data.previousRound);
1043
1125
  }
1126
+ data.satsVault = satsVaultDtoSchemaResponseTransformer(data.satsVault);
1044
1127
  data.startSlot = u64DtoSchemaResponseTransformer(data.startSlot);
1045
1128
  data.strike = strikeJackpotDtoSchemaResponseTransformer(data.strike);
1046
1129
  return data;
@@ -1053,15 +1136,45 @@ var publicDeploymentDtoSchemaResponseTransformer = (data) => {
1053
1136
  data.deployedUsdAmount = u64DtoSchemaResponseTransformer(data.deployedUsdAmount);
1054
1137
  return data;
1055
1138
  };
1139
+ var epochVaultEntryDtoSchemaResponseTransformer = (data) => {
1140
+ data.tickets = u64DtoSchemaResponseTransformer(data.tickets);
1141
+ return data;
1142
+ };
1056
1143
  var minerDtoSchemaResponseTransformer = (data) => {
1057
1144
  data.hashrateAmount = u64DtoSchemaResponseTransformer(data.hashrateAmount);
1058
1145
  data.unclaimedBtcShares = u64DtoSchemaResponseTransformer(data.unclaimedBtcShares);
1059
1146
  data.unclaimedUsdAmount = u64DtoSchemaResponseTransformer(data.unclaimedUsdAmount);
1060
1147
  return data;
1061
1148
  };
1149
+ var oneBtcVaultEntryDtoSchemaResponseTransformer = (data) => {
1150
+ data.startTicketId = u64DtoSchemaResponseTransformer(data.startTicketId);
1151
+ data.ticketsCount = u64DtoSchemaResponseTransformer(data.ticketsCount);
1152
+ return data;
1153
+ };
1062
1154
  var profileDtoSchemaResponseTransformer = (data) => {
1063
1155
  data.deployments = data.deployments.map((item) => publicDeploymentDtoSchemaResponseTransformer(item));
1156
+ data.epochVaultEntries = data.epochVaultEntries.map((item) => epochVaultEntryDtoSchemaResponseTransformer(item));
1064
1157
  data.miner = minerDtoSchemaResponseTransformer(data.miner);
1158
+ data.oneBtcVaultEntries = data.oneBtcVaultEntries.map((item) => oneBtcVaultEntryDtoSchemaResponseTransformer(item));
1159
+ return data;
1160
+ };
1161
+ var snapshotDtoSchemaResponseTransformer = (data) => {
1162
+ data.board = boardDtoSchemaResponseTransformer(data.board);
1163
+ if (data.profile) {
1164
+ data.profile = profileDtoSchemaResponseTransformer(data.profile);
1165
+ }
1166
+ return data;
1167
+ };
1168
+ var sseResponseSnapshotSchemaResponseTransformer = (data) => {
1169
+ data = snapshotDtoSchemaResponseTransformer(data);
1170
+ return data;
1171
+ };
1172
+ var sseResponseSchemaResponseTransformer = (data) => {
1173
+ data = sseResponseSnapshotSchemaResponseTransformer(data);
1174
+ return data;
1175
+ };
1176
+ var sseResponseTransformer = async (data) => {
1177
+ data = sseResponseSchemaResponseTransformer(data);
1065
1178
  return data;
1066
1179
  };
1067
1180
  var getUserProfileResponseTransformer = async (data) => {
@@ -1078,6 +1191,12 @@ var zBadRequestErrorCodeErrorBody = z.object({
1078
1191
  "invalid_body"
1079
1192
  ])
1080
1193
  });
1194
+ var zEpochStateDto = z.enum([
1195
+ "open",
1196
+ "settling",
1197
+ "settled",
1198
+ "complete"
1199
+ ]);
1081
1200
  var zFieldError = z.object({
1082
1201
  field: z.string(),
1083
1202
  message: z.string()
@@ -1087,6 +1206,12 @@ var zI64Dto = z.coerce.bigint().min(BigInt("-9223372036854775808"), { error: "In
1087
1206
  var zInternalErrorCodeErrorBody = z.object({
1088
1207
  code: z.enum(["internal_error"])
1089
1208
  });
1209
+ var zNotificationEntity = z.enum(["state_snapshot"]);
1210
+ var zOneBtcStateDto = z.enum([
1211
+ "open",
1212
+ "settled",
1213
+ "complete"
1214
+ ]);
1090
1215
  var zPubkeyDto = z.string().regex(/^[1-9A-HJ-NP-Za-km-z]+$/);
1091
1216
  var zRoundStateDto = z.enum([
1092
1217
  "active",
@@ -1107,6 +1232,59 @@ var zSatrushConfigDto = z.object({
1107
1232
  });
1108
1233
  var zU128Dto = z.string();
1109
1234
  var zU64Dto = z.coerce.bigint().min(BigInt("0"), { error: "Invalid value: Expected uint64 to be >= 0" }).max(BigInt("18446744073709551615"), { error: "Invalid value: Expected uint64 to be <= 18446744073709551615" });
1235
+ var zEpochVaultEntryDto = z.object({
1236
+ address: zPubkeyDto,
1237
+ iterationId: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1238
+ pageIndex: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1239
+ tickets: zU64Dto
1240
+ });
1241
+ var zEpochWinnerDto = z.object({
1242
+ authority: zPubkeyDto,
1243
+ claimed: z.boolean(),
1244
+ tickets: zU64Dto
1245
+ });
1246
+ var zEpochVaultIterationDto = z.object({
1247
+ address: zPubkeyDto,
1248
+ claimableBtc: z.optional(z.union([
1249
+ z.null(),
1250
+ zU64Dto
1251
+ ])),
1252
+ claimableUsd: z.optional(z.union([
1253
+ z.null(),
1254
+ zU64Dto
1255
+ ])),
1256
+ id: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1257
+ pageCount: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1258
+ participantsCount: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1259
+ state: zEpochStateDto,
1260
+ totalTickets: zU64Dto,
1261
+ winners: z.optional(z.union([
1262
+ z.array(zEpochWinnerDto),
1263
+ z.null()
1264
+ ])),
1265
+ winnersClaimed: z.optional(z.union([
1266
+ z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1267
+ z.null()
1268
+ ])),
1269
+ winnersSelected: z.optional(z.union([
1270
+ z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1271
+ z.null()
1272
+ ]))
1273
+ });
1274
+ var zEpochVaultDto = z.object({
1275
+ address: zPubkeyDto,
1276
+ currentIteration: z.optional(z.union([
1277
+ z.null(),
1278
+ zEpochVaultIterationDto
1279
+ ])),
1280
+ iterationId: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1281
+ lastTriggerSlot: zU64Dto,
1282
+ pendingUsdAmount: zU64Dto,
1283
+ poolBtcAmount: zU64Dto,
1284
+ poolUsdAmount: zU64Dto,
1285
+ reservedBtcAmount: zU64Dto,
1286
+ reservedUsdAmount: zU64Dto
1287
+ });
1110
1288
  var zMinerDto = z.object({
1111
1289
  authority: zPubkeyDto,
1112
1290
  currentStreakCount: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
@@ -1115,6 +1293,35 @@ var zMinerDto = z.object({
1115
1293
  unclaimedBtcShares: zU64Dto,
1116
1294
  unclaimedUsdAmount: zU64Dto
1117
1295
  });
1296
+ var zOneBtcVaultEntryDto = z.object({
1297
+ address: zPubkeyDto,
1298
+ iterationId: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1299
+ startTicketId: zU64Dto,
1300
+ ticketsCount: zU64Dto
1301
+ });
1302
+ var zOneBtcVaultIterationDto = z.object({
1303
+ address: zPubkeyDto,
1304
+ id: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1305
+ prizeBtc: zU64Dto,
1306
+ state: zOneBtcStateDto,
1307
+ totalTickets: zU64Dto,
1308
+ winningTicket: z.optional(z.union([
1309
+ z.null(),
1310
+ zU64Dto
1311
+ ]))
1312
+ });
1313
+ var zOneBtcVaultDto = z.object({
1314
+ address: zPubkeyDto,
1315
+ btcAmount: zU64Dto,
1316
+ currentIteration: z.optional(z.union([
1317
+ z.null(),
1318
+ zOneBtcVaultIterationDto
1319
+ ])),
1320
+ iterationId: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1321
+ lastTriggerSlot: zU64Dto,
1322
+ pendingUsdAmount: zU64Dto,
1323
+ reservedBtcAmount: zU64Dto
1324
+ });
1118
1325
  var zPublicDeploymentDto = z.object({
1119
1326
  address: zPubkeyDto,
1120
1327
  deployedUsdAmount: zU64Dto,
@@ -1123,7 +1330,14 @@ var zPublicDeploymentDto = z.object({
1123
1330
  });
1124
1331
  var zProfileDto = z.object({
1125
1332
  deployments: z.array(zPublicDeploymentDto),
1126
- miner: zMinerDto
1333
+ epochVaultEntries: z.array(zEpochVaultEntryDto),
1334
+ miner: zMinerDto,
1335
+ oneBtcVaultEntries: z.array(zOneBtcVaultEntryDto)
1336
+ });
1337
+ var zSatsVaultDto = z.object({
1338
+ address: zPubkeyDto,
1339
+ btcAmount: zU64Dto,
1340
+ btcShares: zU64Dto
1127
1341
  });
1128
1342
  var zStrikeJackpotDto = z.object({
1129
1343
  btcAmount: zU64Dto,
@@ -1163,15 +1377,32 @@ var zBoardDto = z.object({
1163
1377
  address: zPubkeyDto,
1164
1378
  currentSlot: zU64Dto,
1165
1379
  endSlot: zU64Dto,
1380
+ epochVault: zEpochVaultDto,
1381
+ oneBtcVault: zOneBtcVaultDto,
1166
1382
  previousRound: z.optional(z.union([
1167
1383
  z.null(),
1168
1384
  zRoundDto
1169
1385
  ])),
1170
1386
  roundDuration: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1171
1387
  roundId: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1388
+ satsVault: zSatsVaultDto,
1172
1389
  startSlot: zU64Dto,
1173
1390
  strike: zStrikeJackpotDto
1174
1391
  });
1392
+ var zSnapshotDto = z.object({
1393
+ board: zBoardDto,
1394
+ entity: zNotificationEntity,
1395
+ profile: z.optional(z.union([
1396
+ z.null(),
1397
+ zProfileDto
1398
+ ]))
1399
+ });
1400
+ var zSseResponseSnapshot = zSnapshotDto.and(z.object({
1401
+ entity: z.enum(["state_snapshot"])
1402
+ }));
1403
+ var zSseResponse = z.object({
1404
+ entity: z.literal("state_snapshot")
1405
+ }).and(zSseResponseSnapshot);
1175
1406
  var zUserProfileApiError400InvalidAddress = z.object({
1176
1407
  code: z.enum(["invalid_address"])
1177
1408
  });
@@ -1215,6 +1446,14 @@ var zGetConfigData = z.object({
1215
1446
  var zGetConfigResponse = z.object({
1216
1447
  data: zSatrushConfigDto
1217
1448
  });
1449
+ var zSseData = z.object({
1450
+ body: z.optional(z.never()),
1451
+ path: z.optional(z.never()),
1452
+ query: z.optional(z.object({
1453
+ wallet: z.optional(z.string())
1454
+ }))
1455
+ });
1456
+ var zSseResponse2 = zSseResponse;
1218
1457
  var zGetUserProfileData = z.object({
1219
1458
  body: z.optional(z.never()),
1220
1459
  path: z.object({
@@ -1276,6 +1515,20 @@ var SatrushBackendSdk = class _SatrushBackendSdk extends HeyApiClient {
1276
1515
  ...options
1277
1516
  });
1278
1517
  }
1518
+ /**
1519
+ * Subscribe for SSE stream
1520
+ */
1521
+ sse(parameters, options) {
1522
+ const params = buildClientParams([parameters], [{ args: [{ in: "query", key: "wallet" }] }]);
1523
+ return (options?.client ?? this.client).sse.get({
1524
+ requestValidator: async (data) => await zSseData.parseAsync(data),
1525
+ responseTransformer: sseResponseTransformer,
1526
+ responseValidator: async (data) => await zSseResponse2.parseAsync(data),
1527
+ url: "/v1/streams/sse",
1528
+ ...options,
1529
+ ...params
1530
+ });
1531
+ }
1279
1532
  /**
1280
1533
  * Request user profile
1281
1534
  */
@@ -1293,6 +1546,18 @@ var SatrushBackendSdk = class _SatrushBackendSdk extends HeyApiClient {
1293
1546
  };
1294
1547
 
1295
1548
  // src/generated/types.gen.ts
1549
+ var EpochStateDto = {
1550
+ OPEN: "open",
1551
+ SETTLING: "settling",
1552
+ SETTLED: "settled",
1553
+ COMPLETE: "complete"
1554
+ };
1555
+ var NotificationEntity = { STATE_SNAPSHOT: "state_snapshot" };
1556
+ var OneBtcStateDto = {
1557
+ OPEN: "open",
1558
+ SETTLED: "settled",
1559
+ COMPLETE: "complete"
1560
+ };
1296
1561
  var RoundStateDto = {
1297
1562
  ACTIVE: "active",
1298
1563
  REVEALED: "revealed",
@@ -1346,6 +1611,9 @@ async function unwrap(promise) {
1346
1611
  }
1347
1612
  // Annotate the CommonJS export names for ESM import in node:
1348
1613
  0 && (module.exports = {
1614
+ EpochStateDto,
1615
+ NotificationEntity,
1616
+ OneBtcStateDto,
1349
1617
  RoundStateDto,
1350
1618
  SatrushBackendSdk,
1351
1619
  SatrushBackendSdkError,
@@ -1356,6 +1624,11 @@ async function unwrap(promise) {
1356
1624
  unwrap,
1357
1625
  zBadRequestErrorCodeErrorBody,
1358
1626
  zBoardDto,
1627
+ zEpochStateDto,
1628
+ zEpochVaultDto,
1629
+ zEpochVaultEntryDto,
1630
+ zEpochVaultIterationDto,
1631
+ zEpochWinnerDto,
1359
1632
  zFieldError,
1360
1633
  zGetBoardData,
1361
1634
  zGetBoardResponse,
@@ -1367,12 +1640,23 @@ async function unwrap(promise) {
1367
1640
  zI64Dto,
1368
1641
  zInternalErrorCodeErrorBody,
1369
1642
  zMinerDto,
1643
+ zNotificationEntity,
1644
+ zOneBtcStateDto,
1645
+ zOneBtcVaultDto,
1646
+ zOneBtcVaultEntryDto,
1647
+ zOneBtcVaultIterationDto,
1370
1648
  zProfileDto,
1371
1649
  zPubkeyDto,
1372
1650
  zPublicDeploymentDto,
1373
1651
  zRoundDto,
1374
1652
  zRoundStateDto,
1375
1653
  zSatrushConfigDto,
1654
+ zSatsVaultDto,
1655
+ zSnapshotDto,
1656
+ zSseData,
1657
+ zSseResponse,
1658
+ zSseResponse2,
1659
+ zSseResponseSnapshot,
1376
1660
  zStrikeJackpotDto,
1377
1661
  zTileStakeDto,
1378
1662
  zU128Dto,