@budgetbuddyde/types 1.0.52 → 1.1.0

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 (54) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -1
  3. package/lib/index.d.ts +2 -15
  4. package/lib/index.js +2 -15
  5. package/lib/schemas/asset/backend.d.ts +237 -0
  6. package/lib/schemas/asset/backend.js +124 -0
  7. package/lib/schemas/asset/base.d.ts +26 -0
  8. package/lib/schemas/asset/base.js +28 -0
  9. package/lib/schemas/asset/index.d.ts +3 -0
  10. package/lib/schemas/asset/index.js +19 -0
  11. package/lib/schemas/asset/parqet.d.ts +813 -0
  12. package/lib/schemas/asset/parqet.js +510 -0
  13. package/lib/schemas/common.d.ts +6 -0
  14. package/lib/schemas/common.js +16 -0
  15. package/lib/schemas/index.d.ts +2 -0
  16. package/lib/{Stocks → schemas}/index.js +2 -2
  17. package/lib/types/index.d.ts +1 -0
  18. package/lib/types/index.js +17 -0
  19. package/lib/types/service.d.ts +1 -0
  20. package/lib/types/service.js +2 -0
  21. package/package.json +20 -28
  22. package/lib/ApiResponse.type.d.ts +0 -73
  23. package/lib/ApiResponse.type.js +0 -87
  24. package/lib/Base.type.d.ts +0 -10
  25. package/lib/Base.type.js +0 -16
  26. package/lib/Budget.types.d.ts +0 -347
  27. package/lib/Budget.types.js +0 -54
  28. package/lib/Category.types.d.ts +0 -58
  29. package/lib/Category.types.js +0 -23
  30. package/lib/DailyBalance.types.d.ts +0 -24
  31. package/lib/DailyBalance.types.js +0 -14
  32. package/lib/HttpStatusCode.type.d.ts +0 -26
  33. package/lib/HttpStatusCode.type.js +0 -30
  34. package/lib/Mail.types.d.ts +0 -53
  35. package/lib/Mail.types.js +0 -25
  36. package/lib/MonthlyBalance.types.d.ts +0 -24
  37. package/lib/MonthlyBalance.types.js +0 -14
  38. package/lib/Newsletter.types.d.ts +0 -27
  39. package/lib/Newsletter.types.js +0 -15
  40. package/lib/PaymentMethod.types.d.ts +0 -76
  41. package/lib/PaymentMethod.types.js +0 -29
  42. package/lib/PocketBase.types.d.ts +0 -42
  43. package/lib/PocketBase.types.js +0 -36
  44. package/lib/Stocks/Stock.types.d.ts +0 -3596
  45. package/lib/Stocks/Stock.types.js +0 -425
  46. package/lib/Stocks/StockMappings.d.ts +0 -4
  47. package/lib/Stocks/StockMappings.js +0 -104
  48. package/lib/Stocks/index.d.ts +0 -2
  49. package/lib/Subscription.types.d.ts +0 -267
  50. package/lib/Subscription.types.js +0 -46
  51. package/lib/Transaction.types.d.ts +0 -261
  52. package/lib/Transaction.types.js +0 -45
  53. package/lib/User.types.d.ts +0 -48
  54. package/lib/User.types.js +0 -26
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Thorben Klein
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1 +1 @@
1
- # @budgetbuddyde/types
1
+ # `@budgetbuddyde/types`
package/lib/index.d.ts CHANGED
@@ -1,15 +1,2 @@
1
- export * from './Base.type';
2
- export * from './ApiResponse.type';
3
- export * from './HttpStatusCode.type';
4
- export * from './PocketBase.types';
5
- export * from './User.types';
6
- export * from './Category.types';
7
- export * from './PaymentMethod.types';
8
- export * from './Transaction.types';
9
- export * from './Subscription.types';
10
- export * from './Budget.types';
11
- export * from './DailyBalance.types';
12
- export * from './MonthlyBalance.types';
13
- export * from './Stocks';
14
- export * from './Newsletter.types';
15
- export * from './Mail.types';
1
+ export * from "./schemas";
2
+ export * from "./types";
package/lib/index.js CHANGED
@@ -14,18 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./Base.type"), exports);
18
- __exportStar(require("./ApiResponse.type"), exports);
19
- __exportStar(require("./HttpStatusCode.type"), exports);
20
- __exportStar(require("./PocketBase.types"), exports);
21
- __exportStar(require("./User.types"), exports);
22
- __exportStar(require("./Category.types"), exports);
23
- __exportStar(require("./PaymentMethod.types"), exports);
24
- __exportStar(require("./Transaction.types"), exports);
25
- __exportStar(require("./Subscription.types"), exports);
26
- __exportStar(require("./Budget.types"), exports);
27
- __exportStar(require("./DailyBalance.types"), exports);
28
- __exportStar(require("./MonthlyBalance.types"), exports);
29
- __exportStar(require("./Stocks"), exports);
30
- __exportStar(require("./Newsletter.types"), exports);
31
- __exportStar(require("./Mail.types"), exports);
17
+ __exportStar(require("./schemas"), exports);
18
+ __exportStar(require("./types"), exports);
@@ -0,0 +1,237 @@
1
+ import { z } from "zod";
2
+ export declare const AssetQuote: z.ZodObject<{
3
+ identifier: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodString, z.ZodString]>;
4
+ from: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
5
+ to: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
6
+ timeframe: z.ZodEnum<{
7
+ "1w": "1w";
8
+ "1m": "1m";
9
+ "3m": "3m";
10
+ "6m": "6m";
11
+ ytd: "ytd";
12
+ "1y": "1y";
13
+ "3y": "3y";
14
+ "5y": "5y";
15
+ max: "max";
16
+ }>;
17
+ exchange: z.ZodString;
18
+ currency: z.ZodString;
19
+ quotes: z.ZodArray<z.ZodObject<{
20
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
21
+ price: z.ZodNumber;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>;
24
+ export declare const BackendSchemas: {
25
+ Asset: z.ZodObject<{
26
+ identifier: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodString, z.ZodString]>;
27
+ wkn: z.ZodNullable<z.ZodString>;
28
+ name: z.ZodString;
29
+ etfDomicile: z.ZodNullable<z.ZodString>;
30
+ etfCompany: z.ZodNullable<z.ZodString>;
31
+ securityType: z.ZodUnion<readonly [z.ZodEnum<{
32
+ Aktie: "Aktie";
33
+ ETF: "ETF";
34
+ Zertifikat: "Zertifikat";
35
+ }>, z.ZodLiteral<"Crypto">, z.ZodLiteral<"Commodity">]>;
36
+ assetType: z.ZodEnum<{
37
+ Security: "Security";
38
+ Commodity: "Commodity";
39
+ Crypto: "Crypto";
40
+ }>;
41
+ description: z.ZodNullable<z.ZodString>;
42
+ hasDividends: z.ZodBoolean;
43
+ logoUrl: z.ZodNullable<z.ZodString>;
44
+ ipoDate: z.ZodNullable<z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>>;
45
+ currency: z.ZodNullable<z.ZodString>;
46
+ marketCap: z.ZodNullable<z.ZodNumber>;
47
+ shares: z.ZodNullable<z.ZodNumber>;
48
+ beta: z.ZodNullable<z.ZodNumber>;
49
+ peRatioTTM: z.ZodNullable<z.ZodNumber>;
50
+ priceSalesRatioTTM: z.ZodNullable<z.ZodNumber>;
51
+ priceToBookRatioTTM: z.ZodNullable<z.ZodNumber>;
52
+ pegRatioTTM: z.ZodNullable<z.ZodNumber>;
53
+ priceFairValueRatio: z.ZodNullable<z.ZodNumber>;
54
+ dividendYieldPercentageTTM: z.ZodNullable<z.ZodNumber>;
55
+ dividendPerShareTTM: z.ZodNullable<z.ZodNumber>;
56
+ payoutRatioTTM: z.ZodNullable<z.ZodNumber>;
57
+ etfDetails: z.ZodNullable<z.ZodObject<{
58
+ currency: z.ZodString;
59
+ description: z.ZodString;
60
+ nav: z.ZodNumber;
61
+ priceToBook: z.ZodNumber;
62
+ priceToEarnings: z.ZodNumber;
63
+ aum: z.ZodNumber;
64
+ expenseRatio: z.ZodNumber;
65
+ breakdown: z.ZodObject<{
66
+ updatedAt: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
67
+ holdings: z.ZodArray<z.ZodObject<{
68
+ name: z.ZodString;
69
+ share: z.ZodNumber;
70
+ marketValue: z.ZodNumber;
71
+ amountOfShares: z.ZodNumber;
72
+ }, z.core.$strip>>;
73
+ }, z.core.$strip>;
74
+ }, z.core.$strip>>;
75
+ fiftyTwoWeekRange: z.ZodNullable<z.ZodObject<{
76
+ from: z.ZodNumber;
77
+ to: z.ZodNumber;
78
+ }, z.core.$strip>>;
79
+ financials: z.ZodObject<{
80
+ annual: z.ZodArray<z.ZodObject<{
81
+ currency: z.ZodString;
82
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
83
+ revenue: z.ZodNumber;
84
+ grossProfit: z.ZodNumber;
85
+ netIncome: z.ZodNumber;
86
+ ebitda: z.ZodNumber;
87
+ }, z.core.$strip>>;
88
+ quarterly: z.ZodArray<z.ZodObject<{
89
+ currency: z.ZodString;
90
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
91
+ revenue: z.ZodNumber;
92
+ grossProfit: z.ZodNumber;
93
+ netIncome: z.ZodNumber;
94
+ ebitda: z.ZodNumber;
95
+ }, z.core.$strip>>;
96
+ incomeStatementGrowth: z.ZodArray<z.ZodObject<{
97
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
98
+ growthRevenue: z.ZodNumber;
99
+ growthNetIncome: z.ZodNumber;
100
+ }, z.core.$strip>>;
101
+ }, z.core.$strip>;
102
+ symbols: z.ZodArray<z.ZodObject<{
103
+ exchange: z.ZodString;
104
+ symbol: z.ZodString;
105
+ }, z.core.$strip>>;
106
+ dividends: z.ZodObject<{
107
+ payoutInterval: z.ZodEnum<{
108
+ year: "year";
109
+ halfyear: "halfyear";
110
+ quarter: "quarter";
111
+ month: "month";
112
+ none: "none";
113
+ }>;
114
+ historical: z.ZodArray<z.ZodObject<{
115
+ type: z.ZodLiteral<"Dividend">;
116
+ security: z.ZodString;
117
+ price: z.ZodNumber;
118
+ currency: z.ZodString;
119
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
120
+ datetime: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
121
+ paymentDate: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
122
+ exDate: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
123
+ isEstimated: z.ZodBoolean;
124
+ declarationDate: z.ZodNullable<z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>>;
125
+ recordDate: z.ZodNullable<z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>>;
126
+ }, z.core.$strip>>;
127
+ future: z.ZodArray<z.ZodObject<{
128
+ type: z.ZodLiteral<"Dividend">;
129
+ security: z.ZodString;
130
+ price: z.ZodNumber;
131
+ currency: z.ZodString;
132
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
133
+ datetime: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
134
+ paymentDate: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
135
+ exDate: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
136
+ isEstimated: z.ZodBoolean;
137
+ declarationDate: z.ZodNullable<z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>>;
138
+ recordDate: z.ZodNullable<z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>>;
139
+ }, z.core.$strip>>;
140
+ KPIs: z.ZodNullable<z.ZodObject<{
141
+ cagr3Y: z.ZodNullable<z.ZodNumber>;
142
+ cagr5Y: z.ZodNullable<z.ZodNumber>;
143
+ cagr10Y: z.ZodNullable<z.ZodNumber>;
144
+ dividendYieldPercentageTTM: z.ZodOptional<z.ZodNumber>;
145
+ dividendPerShareTTM: z.ZodNumber;
146
+ }, z.core.$strip>>;
147
+ yearlyTTM: z.ZodNullable<z.ZodArray<z.ZodObject<{
148
+ year: z.ZodString;
149
+ dividend: z.ZodNumber;
150
+ }, z.core.$strip>>>;
151
+ }, z.core.$strip>;
152
+ analysis: z.ZodObject<{
153
+ priceTargetConsensus: z.ZodNullable<z.ZodObject<{
154
+ currency: z.ZodString;
155
+ high: z.ZodNumber;
156
+ low: z.ZodNumber;
157
+ consensus: z.ZodNumber;
158
+ median: z.ZodNumber;
159
+ }, z.core.$strip>>;
160
+ recommendation: z.ZodObject<{
161
+ strongBuy: z.ZodNumber;
162
+ buy: z.ZodNumber;
163
+ hold: z.ZodNumber;
164
+ sell: z.ZodNumber;
165
+ strongSell: z.ZodNumber;
166
+ }, z.core.$strip>;
167
+ scorings: z.ZodArray<z.ZodObject<{
168
+ source: z.ZodString;
169
+ type: z.ZodString;
170
+ value: z.ZodNumber;
171
+ maxValue: z.ZodNumber;
172
+ badgeColor: z.ZodString;
173
+ }, z.core.$strip>>;
174
+ media: z.ZodArray<z.ZodObject<{
175
+ analysisDate: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
176
+ mediaType: z.ZodUnion<[z.ZodEnum<{
177
+ video: "video";
178
+ article: "article";
179
+ }>, z.ZodString]>;
180
+ ratingCount: z.ZodNumber;
181
+ rating: z.ZodNumber;
182
+ author: z.ZodString;
183
+ title: z.ZodString;
184
+ url: z.ZodURL;
185
+ }, z.core.$strip>>;
186
+ }, z.core.$strip>;
187
+ regions: z.ZodArray<z.ZodObject<{
188
+ id: z.ZodString;
189
+ name: z.ZodString;
190
+ share: z.ZodNumber;
191
+ }, z.core.$strip>>;
192
+ countries: z.ZodArray<z.ZodObject<{
193
+ id: z.ZodString;
194
+ name: z.ZodString;
195
+ share: z.ZodNumber;
196
+ }, z.core.$strip>>;
197
+ sectors: z.ZodArray<z.ZodObject<{
198
+ id: z.ZodString;
199
+ name: z.ZodString;
200
+ share: z.ZodNumber;
201
+ }, z.core.$strip>>;
202
+ industries: z.ZodArray<z.ZodObject<{
203
+ id: z.ZodString;
204
+ name: z.ZodString;
205
+ share: z.ZodNumber;
206
+ }, z.core.$strip>>;
207
+ news: z.ZodArray<z.ZodObject<{
208
+ publishedAt: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
209
+ title: z.ZodString;
210
+ description: z.ZodString;
211
+ image: z.ZodOptional<z.ZodURL>;
212
+ url: z.ZodURL;
213
+ }, z.core.$strip>>;
214
+ }, z.core.$strip>;
215
+ AssetQuote: z.ZodObject<{
216
+ identifier: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodString, z.ZodString]>;
217
+ from: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
218
+ to: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
219
+ timeframe: z.ZodEnum<{
220
+ "1w": "1w";
221
+ "1m": "1m";
222
+ "3m": "3m";
223
+ "6m": "6m";
224
+ ytd: "ytd";
225
+ "1y": "1y";
226
+ "3y": "3y";
227
+ "5y": "5y";
228
+ max: "max";
229
+ }>;
230
+ exchange: z.ZodString;
231
+ currency: z.ZodString;
232
+ quotes: z.ZodArray<z.ZodObject<{
233
+ date: z.ZodPipe<z.ZodUnion<[z.ZodUnion<[z.ZodDate, z.ZodNumber]>, z.ZodString]>, z.ZodTransform<Date, string | number | Date>>;
234
+ price: z.ZodNumber;
235
+ }, z.core.$strip>>;
236
+ }, z.core.$strip>;
237
+ };
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BackendSchemas = exports.AssetQuote = void 0;
4
+ const zod_1 = require("zod");
5
+ const common_1 = require("../common");
6
+ const base_1 = require("./base");
7
+ const parqet_1 = require("./parqet");
8
+ const StaticMapping = zod_1.z.object({
9
+ id: zod_1.z.string(),
10
+ name: zod_1.z.string(),
11
+ share: zod_1.z.number(),
12
+ });
13
+ const UpdatedDividend = parqet_1.ParqetSchemas.Dividend.extend({
14
+ declarationDate: common_1.common.ZodDate.nullable(),
15
+ recordDate: common_1.common.ZodDate.nullable(),
16
+ });
17
+ const Asset = zod_1.z.object({
18
+ identifier: base_1.AssetIdentifier,
19
+ wkn: base_1.WKN.nullable(),
20
+ name: zod_1.z.string(),
21
+ etfDomicile: zod_1.z.string().nullable(),
22
+ etfCompany: zod_1.z.string().nullable(),
23
+ securityType: zod_1.z.union([
24
+ base_1.SecurityType,
25
+ zod_1.z.literal("Crypto"),
26
+ zod_1.z.literal("Commodity"),
27
+ ]),
28
+ assetType: base_1.AssetType,
29
+ description: zod_1.z.string().nullable(),
30
+ hasDividends: zod_1.z.boolean(),
31
+ logoUrl: zod_1.z.string().nullable(),
32
+ ipoDate: common_1.common.ZodDate.nullable(),
33
+ currency: common_1.common.CurrencyCode.nullable(),
34
+ marketCap: zod_1.z.number().nullable(),
35
+ shares: zod_1.z.number().nullable(),
36
+ beta: zod_1.z.number().nullable(),
37
+ peRatioTTM: zod_1.z.number().nullable(),
38
+ priceSalesRatioTTM: zod_1.z.number().nullable(),
39
+ priceToBookRatioTTM: zod_1.z.number().nullable(),
40
+ pegRatioTTM: zod_1.z.number().nullable(),
41
+ priceFairValueRatio: zod_1.z.number().nullable(),
42
+ dividendYieldPercentageTTM: zod_1.z.number().nullable(),
43
+ dividendPerShareTTM: zod_1.z.number().nullable(),
44
+ payoutRatioTTM: zod_1.z.number().nullable(),
45
+ etfDetails: zod_1.z
46
+ .object({
47
+ currency: common_1.common.CurrencyCode,
48
+ description: zod_1.z.string(),
49
+ nav: zod_1.z.number(),
50
+ priceToBook: zod_1.z.number(),
51
+ priceToEarnings: zod_1.z.number(),
52
+ aum: zod_1.z.number(),
53
+ expenseRatio: zod_1.z.number(),
54
+ breakdown: zod_1.z.object({
55
+ updatedAt: common_1.common.ZodDate,
56
+ holdings: zod_1.z.array(zod_1.z.object({
57
+ name: zod_1.z.string(),
58
+ share: zod_1.z.number(),
59
+ marketValue: zod_1.z.number(),
60
+ amountOfShares: zod_1.z.number(),
61
+ })),
62
+ }),
63
+ })
64
+ .nullable(),
65
+ fiftyTwoWeekRange: zod_1.z
66
+ .object({
67
+ from: zod_1.z.number(),
68
+ to: zod_1.z.number(),
69
+ })
70
+ .nullable(),
71
+ financials: zod_1.z.object({
72
+ annual: zod_1.z.array(parqet_1.ParqetSchemas.FinancialResult),
73
+ quarterly: zod_1.z.array(parqet_1.ParqetSchemas.FinancialResult),
74
+ incomeStatementGrowth: zod_1.z.array(parqet_1.ParqetSchemas.IncomeStatementGrowth),
75
+ }),
76
+ symbols: zod_1.z.array(parqet_1.ParqetSchemas.SecuritySymbol),
77
+ dividends: zod_1.z.object({
78
+ payoutInterval: parqet_1.ParqetSchemas.DividendPayoutInterval, // REVISIT: ApiSchemas.DividendPayoutInterval,
79
+ historical: zod_1.z.array(UpdatedDividend),
80
+ future: zod_1.z.array(UpdatedDividend),
81
+ KPIs: parqet_1.ParqetSchemas.DividendKPI.nullable(),
82
+ yearlyTTM: zod_1.z
83
+ .array(zod_1.z.object({
84
+ year: zod_1.z.string(),
85
+ dividend: zod_1.z.number(),
86
+ }))
87
+ .nullable(),
88
+ }),
89
+ analysis: zod_1.z.object({
90
+ priceTargetConsensus: parqet_1.ParqetSchemas.PriceTargetConsensus.nullable(),
91
+ recommendation: parqet_1.ParqetSchemas.AnalystEstimates,
92
+ scorings: zod_1.z.array(parqet_1.ParqetSchemas.SecurityScoring),
93
+ media: zod_1.z.array(zod_1.z.object({
94
+ analysisDate: common_1.common.ZodDate,
95
+ mediaType: zod_1.z.enum(["video", "article"]).or(zod_1.z.string()),
96
+ ratingCount: zod_1.z.number(),
97
+ rating: zod_1.z.number(),
98
+ author: zod_1.z.string(),
99
+ title: zod_1.z.string(),
100
+ url: zod_1.z.url(),
101
+ })),
102
+ }),
103
+ regions: zod_1.z.array(StaticMapping),
104
+ countries: zod_1.z.array(StaticMapping),
105
+ sectors: zod_1.z.array(StaticMapping),
106
+ industries: zod_1.z.array(StaticMapping),
107
+ news: zod_1.z.array(parqet_1.ParqetSchemas.News),
108
+ });
109
+ exports.AssetQuote = zod_1.z.object({
110
+ identifier: base_1.AssetIdentifier,
111
+ from: common_1.common.ZodDate,
112
+ to: common_1.common.ZodDate,
113
+ timeframe: base_1.Timeframe,
114
+ exchange: zod_1.z.string(),
115
+ currency: common_1.common.CurrencyCode,
116
+ quotes: zod_1.z.array(zod_1.z.object({
117
+ date: common_1.common.ZodDate,
118
+ price: zod_1.z.number(),
119
+ })),
120
+ });
121
+ exports.BackendSchemas = {
122
+ Asset,
123
+ AssetQuote: exports.AssetQuote,
124
+ };
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ export declare const ISIN: z.ZodString;
3
+ export declare const WKN: z.ZodString;
4
+ export declare const CryptoSymbol: z.ZodString;
5
+ export declare const AssetIdentifier: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodString, z.ZodString]>;
6
+ export declare const AssetType: z.ZodEnum<{
7
+ Security: "Security";
8
+ Commodity: "Commodity";
9
+ Crypto: "Crypto";
10
+ }>;
11
+ export declare const SecurityType: z.ZodEnum<{
12
+ Aktie: "Aktie";
13
+ ETF: "ETF";
14
+ Zertifikat: "Zertifikat";
15
+ }>;
16
+ export declare const Timeframe: z.ZodEnum<{
17
+ "1w": "1w";
18
+ "1m": "1m";
19
+ "3m": "3m";
20
+ "6m": "6m";
21
+ ytd: "ytd";
22
+ "1y": "1y";
23
+ "3y": "3y";
24
+ "5y": "5y";
25
+ max: "max";
26
+ }>;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Timeframe = exports.SecurityType = exports.AssetType = exports.AssetIdentifier = exports.CryptoSymbol = exports.WKN = exports.ISIN = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.ISIN = zod_1.z
6
+ .string()
7
+ .max(12, { message: "ISIN can only be 12 characters long" });
8
+ exports.WKN = zod_1.z
9
+ .string()
10
+ .max(6, { message: "WKN can only be 6 characters long" });
11
+ exports.CryptoSymbol = zod_1.z
12
+ .string()
13
+ .min(3, { error: "CryptoSymbol must be at least 3 characters long" })
14
+ .max(6, { error: "CryptoSymbol can only be 6 characters long" });
15
+ exports.AssetIdentifier = zod_1.z.union([exports.ISIN, exports.CryptoSymbol, exports.WKN, zod_1.z.string()]);
16
+ exports.AssetType = zod_1.z.enum(["Security", "Commodity", "Crypto"]);
17
+ exports.SecurityType = zod_1.z.enum(["Aktie", "ETF", "Zertifikat"]);
18
+ exports.Timeframe = zod_1.z.enum([
19
+ "1w",
20
+ "1m",
21
+ "3m",
22
+ "6m",
23
+ "ytd",
24
+ "1y",
25
+ "3y",
26
+ "5y",
27
+ "max",
28
+ ]);
@@ -0,0 +1,3 @@
1
+ export * from "./backend";
2
+ export * from "./base";
3
+ export * from "./parqet";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./backend"), exports);
18
+ __exportStar(require("./base"), exports);
19
+ __exportStar(require("./parqet"), exports);