@namera-ai/api 0.0.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.
- package/README.md +58 -0
- package/dist/common.js +13 -0
- package/dist/common.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/middlewares/admin.d.ts +25 -0
- package/dist/middlewares/admin.d.ts.map +1 -0
- package/dist/middlewares/admin.js +18 -0
- package/dist/middlewares/admin.js.map +1 -0
- package/dist/middlewares/auth.d.ts +640 -0
- package/dist/middlewares/auth.d.ts.map +1 -0
- package/dist/middlewares/auth.js +26 -0
- package/dist/middlewares/auth.js.map +1 -0
- package/dist/middlewares/index.d.ts +3 -0
- package/dist/routes/address-metadata.d.ts +147 -0
- package/dist/routes/address-metadata.d.ts.map +1 -0
- package/dist/routes/address-metadata.js +24 -0
- package/dist/routes/address-metadata.js.map +1 -0
- package/dist/routes/api-key.d.ts +864 -0
- package/dist/routes/api-key.d.ts.map +1 -0
- package/dist/routes/api-key.js +31 -0
- package/dist/routes/api-key.js.map +1 -0
- package/dist/routes/auth/core/index.d.ts +4 -0
- package/dist/routes/auth/core/magic-link.d.ts +34 -0
- package/dist/routes/auth/core/magic-link.d.ts.map +1 -0
- package/dist/routes/auth/core/magic-link.js +25 -0
- package/dist/routes/auth/core/magic-link.js.map +1 -0
- package/dist/routes/auth/core/session.d.ts +805 -0
- package/dist/routes/auth/core/session.d.ts.map +1 -0
- package/dist/routes/auth/core/session.js +31 -0
- package/dist/routes/auth/core/session.js.map +1 -0
- package/dist/routes/auth/core/user.d.ts +45 -0
- package/dist/routes/auth/core/user.d.ts.map +1 -0
- package/dist/routes/auth/core/user.js +15 -0
- package/dist/routes/auth/core/user.js.map +1 -0
- package/dist/routes/auth/index.d.ts +11 -0
- package/dist/routes/auth/notification.d.ts +392 -0
- package/dist/routes/auth/notification.d.ts.map +1 -0
- package/dist/routes/auth/notification.js +40 -0
- package/dist/routes/auth/notification.js.map +1 -0
- package/dist/routes/auth/oauth.d.ts +1347 -0
- package/dist/routes/auth/oauth.d.ts.map +1 -0
- package/dist/routes/auth/oauth.js +62 -0
- package/dist/routes/auth/oauth.js.map +1 -0
- package/dist/routes/auth/organization/index.d.ts +4 -0
- package/dist/routes/auth/organization/invitation.d.ts +400 -0
- package/dist/routes/auth/organization/invitation.d.ts.map +1 -0
- package/dist/routes/auth/organization/invitation.js +55 -0
- package/dist/routes/auth/organization/invitation.js.map +1 -0
- package/dist/routes/auth/organization/members.d.ts +250 -0
- package/dist/routes/auth/organization/members.d.ts.map +1 -0
- package/dist/routes/auth/organization/members.js +37 -0
- package/dist/routes/auth/organization/members.js.map +1 -0
- package/dist/routes/auth/organization/organization.d.ts +196 -0
- package/dist/routes/auth/organization/organization.d.ts.map +1 -0
- package/dist/routes/auth/organization/organization.js +31 -0
- package/dist/routes/auth/organization/organization.js.map +1 -0
- package/dist/routes/beta-invite.d.ts +24 -0
- package/dist/routes/beta-invite.d.ts.map +1 -0
- package/dist/routes/beta-invite.js +20 -0
- package/dist/routes/beta-invite.js.map +1 -0
- package/dist/routes/billing.d.ts +34 -0
- package/dist/routes/billing.d.ts.map +1 -0
- package/dist/routes/billing.js +14 -0
- package/dist/routes/billing.js.map +1 -0
- package/dist/routes/dashboard.d.ts +58 -0
- package/dist/routes/dashboard.d.ts.map +1 -0
- package/dist/routes/dashboard.js +14 -0
- package/dist/routes/dashboard.js.map +1 -0
- package/dist/routes/ens.d.ts +14 -0
- package/dist/routes/ens.d.ts.map +1 -0
- package/dist/routes/ens.js +15 -0
- package/dist/routes/ens.js.map +1 -0
- package/dist/routes/execution.d.ts +816 -0
- package/dist/routes/execution.d.ts.map +1 -0
- package/dist/routes/execution.js +50 -0
- package/dist/routes/execution.js.map +1 -0
- package/dist/routes/health.d.ts +10 -0
- package/dist/routes/health.d.ts.map +1 -0
- package/dist/routes/health.js +10 -0
- package/dist/routes/health.js.map +1 -0
- package/dist/routes/index.d.ts +23 -0
- package/dist/routes/portfolio.d.ts +94 -0
- package/dist/routes/portfolio.d.ts.map +1 -0
- package/dist/routes/portfolio.js +16 -0
- package/dist/routes/portfolio.js.map +1 -0
- package/dist/routes/session-key.d.ts +1844 -0
- package/dist/routes/session-key.d.ts.map +1 -0
- package/dist/routes/session-key.js +55 -0
- package/dist/routes/session-key.js.map +1 -0
- package/dist/routes/signature.d.ts +195 -0
- package/dist/routes/signature.d.ts.map +1 -0
- package/dist/routes/signature.js +38 -0
- package/dist/routes/signature.js.map +1 -0
- package/dist/routes/waitlist.d.ts +42 -0
- package/dist/routes/waitlist.d.ts.map +1 -0
- package/dist/routes/waitlist.js +27 -0
- package/dist/routes/waitlist.js.map +1 -0
- package/dist/routes/wallet.d.ts +547 -0
- package/dist/routes/wallet.d.ts.map +1 -0
- package/dist/routes/wallet.js +50 -0
- package/dist/routes/wallet.js.map +1 -0
- package/package.json +61 -0
|
@@ -0,0 +1,547 @@
|
|
|
1
|
+
import { Authorization } from "../middlewares/auth.js";
|
|
2
|
+
import "../middlewares/index.js";
|
|
3
|
+
import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema } from "effect/unstable/httpapi";
|
|
4
|
+
import { PasskeyRegistrationError, PasskeyVerificationError, PortfolioUnavailableError, WalletCreationError, WalletCustodyUnavailableError, WalletNotFoundError } from "@namera-ai/protocol";
|
|
5
|
+
//#region src/routes/wallet.d.ts
|
|
6
|
+
declare const WalletGroup_base: HttpApiGroup.HttpApiGroup<"wallet", HttpApiEndpoint.HttpApiEndpoint<"createPasskeyRegistrationOptions", "POST", "/wallets/passkey/registration-options", never, never, never, never, import("effect/Schema").toCodecJson<import("effect/Schema").Struct<{
|
|
7
|
+
readonly verificationId: import("effect/Schema").brand<import("effect/Schema").String, "VerificationId">;
|
|
8
|
+
readonly options: import("effect/Schema").Struct<{
|
|
9
|
+
readonly challenge: import("effect/Schema").String;
|
|
10
|
+
readonly rp: import("effect/Schema").Struct<{
|
|
11
|
+
readonly id: import("effect/Schema").String;
|
|
12
|
+
readonly name: import("effect/Schema").String;
|
|
13
|
+
}>;
|
|
14
|
+
readonly user: import("effect/Schema").Struct<{
|
|
15
|
+
readonly id: import("effect/Schema").String;
|
|
16
|
+
readonly name: import("effect/Schema").String;
|
|
17
|
+
readonly displayName: import("effect/Schema").String;
|
|
18
|
+
}>;
|
|
19
|
+
readonly pubKeyCredParams: import("effect/Schema").$Array<import("effect/Schema").Struct<{
|
|
20
|
+
readonly alg: import("effect/Schema").Int;
|
|
21
|
+
readonly type: import("effect/Schema").Literal<"public-key">;
|
|
22
|
+
}>>;
|
|
23
|
+
readonly timeout: import("effect/Schema").Int;
|
|
24
|
+
readonly excludeCredentials: import("effect/Schema").$Array<import("effect/Schema").Struct<{
|
|
25
|
+
readonly id: import("effect/Schema").String;
|
|
26
|
+
readonly type: import("effect/Schema").Literal<"public-key">;
|
|
27
|
+
readonly transports: import("effect/Schema").optionalKey<import("effect/Schema").$Array<import("effect/Schema").String>>;
|
|
28
|
+
}>>;
|
|
29
|
+
readonly authenticatorSelection: import("effect/Schema").Struct<{
|
|
30
|
+
readonly residentKey: import("effect/Schema").Literal<"required">;
|
|
31
|
+
readonly requireResidentKey: import("effect/Schema").Literal<true>;
|
|
32
|
+
readonly userVerification: import("effect/Schema").Literal<"required">;
|
|
33
|
+
}>;
|
|
34
|
+
readonly hints: import("effect/Schema").$Array<import("effect/Schema").Literals<readonly ["security-key", "client-device", "hybrid"]>>;
|
|
35
|
+
readonly attestation: import("effect/Schema").Literal<"none">;
|
|
36
|
+
readonly extensions: import("effect/Schema").Struct<{
|
|
37
|
+
readonly credProps: import("effect/Schema").Literal<true>;
|
|
38
|
+
}>;
|
|
39
|
+
}>;
|
|
40
|
+
readonly expiresAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
41
|
+
}>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded | typeof PasskeyRegistrationError>, Authorization, never> | HttpApiEndpoint.HttpApiEndpoint<"create", "POST", "/wallets/", never, never, import("effect/Schema").toCodecJson<import("effect/Schema").Struct<{
|
|
42
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
43
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
44
|
+
readonly type: import("effect/Schema").Literal<"namera-managed">;
|
|
45
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
46
|
+
}>, import("effect/Schema").Struct<{
|
|
47
|
+
readonly type: import("effect/Schema").Literal<"passkey">;
|
|
48
|
+
readonly verificationId: import("effect/Schema").brand<import("effect/Schema").String, "VerificationId">;
|
|
49
|
+
readonly response: import("effect/Schema").Struct<{
|
|
50
|
+
readonly id: import("effect/Schema").String;
|
|
51
|
+
readonly rawId: import("effect/Schema").String;
|
|
52
|
+
readonly response: import("effect/Schema").Struct<{
|
|
53
|
+
readonly clientDataJSON: import("effect/Schema").String;
|
|
54
|
+
readonly attestationObject: import("effect/Schema").String;
|
|
55
|
+
readonly authenticatorData: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
56
|
+
readonly transports: import("effect/Schema").optionalKey<import("effect/Schema").$Array<import("effect/Schema").String>>;
|
|
57
|
+
readonly publicKeyAlgorithm: import("effect/Schema").optionalKey<import("effect/Schema").Int>;
|
|
58
|
+
readonly publicKey: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
59
|
+
}>;
|
|
60
|
+
readonly authenticatorAttachment: import("effect/Schema").optionalKey<import("effect/Schema").Literals<readonly ["cross-platform", "platform"]>>;
|
|
61
|
+
readonly clientExtensionResults: import("effect/Schema").Struct<{
|
|
62
|
+
readonly credProps: import("effect/Schema").optionalKey<import("effect/Schema").Struct<{
|
|
63
|
+
readonly rk: import("effect/Schema").optionalKey<import("effect/Schema").Boolean>;
|
|
64
|
+
}>>;
|
|
65
|
+
}>;
|
|
66
|
+
readonly type: import("effect/Schema").Literal<"public-key">;
|
|
67
|
+
}>;
|
|
68
|
+
}>]>;
|
|
69
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
70
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
71
|
+
readonly name: import("effect/Schema").String;
|
|
72
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
73
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
74
|
+
readonly value: import("effect/Schema").String;
|
|
75
|
+
readonly color: import("effect/Schema").String;
|
|
76
|
+
}>, import("effect/Schema").Struct<{
|
|
77
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
78
|
+
readonly value: import("effect/Schema").String;
|
|
79
|
+
}>, import("effect/Schema").Struct<{
|
|
80
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
81
|
+
readonly value: import("effect/Schema").String;
|
|
82
|
+
}>]>>;
|
|
83
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
84
|
+
}>;
|
|
85
|
+
}>>, never, import("effect/Schema").toCodecJson<import("effect/Schema").Union<readonly [import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
86
|
+
readonly data: import("effect/Schema").Struct<{
|
|
87
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
88
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
89
|
+
readonly validatorType: import("effect/Schema").Literal<"webauthn_p256">;
|
|
90
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
91
|
+
readonly salt: import("effect/Schema").BigIntFromString;
|
|
92
|
+
readonly entityId: import("effect/Schema").Int;
|
|
93
|
+
}>;
|
|
94
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
95
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
96
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
97
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
98
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
99
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
100
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
101
|
+
readonly name: import("effect/Schema").String;
|
|
102
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
103
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
104
|
+
readonly value: import("effect/Schema").String;
|
|
105
|
+
readonly color: import("effect/Schema").String;
|
|
106
|
+
}>, import("effect/Schema").Struct<{
|
|
107
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
108
|
+
readonly value: import("effect/Schema").String;
|
|
109
|
+
}>, import("effect/Schema").Struct<{
|
|
110
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
111
|
+
readonly value: import("effect/Schema").String;
|
|
112
|
+
}>]>>;
|
|
113
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
114
|
+
}>;
|
|
115
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
116
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
117
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
118
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
119
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
120
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
121
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
122
|
+
}>, import("effect/Schema").Struct<{
|
|
123
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
124
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
125
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
126
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
127
|
+
}>]>;
|
|
128
|
+
}>, import("effect/Schema").Struct<{
|
|
129
|
+
readonly data: import("effect/Schema").Struct<{
|
|
130
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
131
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
132
|
+
readonly validatorType: import("effect/Schema").Literal<"ecdsa_secp256k1">;
|
|
133
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
134
|
+
readonly accountMode: import("effect/Schema").Literal<"7702">;
|
|
135
|
+
readonly delegationVersion: import("effect/Schema").Literals<readonly ["v1.0.0", "v1.1.0"]>;
|
|
136
|
+
}>;
|
|
137
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
138
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
139
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
140
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
141
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
142
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
143
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
144
|
+
readonly name: import("effect/Schema").String;
|
|
145
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
146
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
147
|
+
readonly value: import("effect/Schema").String;
|
|
148
|
+
readonly color: import("effect/Schema").String;
|
|
149
|
+
}>, import("effect/Schema").Struct<{
|
|
150
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
151
|
+
readonly value: import("effect/Schema").String;
|
|
152
|
+
}>, import("effect/Schema").Struct<{
|
|
153
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
154
|
+
readonly value: import("effect/Schema").String;
|
|
155
|
+
}>]>>;
|
|
156
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
157
|
+
}>;
|
|
158
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
159
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
160
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
161
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
162
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
163
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
164
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
165
|
+
}>, import("effect/Schema").Struct<{
|
|
166
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
167
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
168
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
169
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
170
|
+
}>]>;
|
|
171
|
+
}>]>]>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded | typeof import("@namera-ai/protocol").BillingLimitExceededError | typeof WalletCreationError | typeof WalletCustodyUnavailableError | typeof PasskeyVerificationError>, Authorization, never> | HttpApiEndpoint.HttpApiEndpoint<"list", "GET", "/wallets/", never, never, never, never, import("effect/Schema").toCodecJson<import("effect/Schema").$Array<import("effect/Schema").Union<readonly [import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
172
|
+
readonly data: import("effect/Schema").Struct<{
|
|
173
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
174
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
175
|
+
readonly validatorType: import("effect/Schema").Literal<"webauthn_p256">;
|
|
176
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
177
|
+
readonly salt: import("effect/Schema").BigIntFromString;
|
|
178
|
+
readonly entityId: import("effect/Schema").Int;
|
|
179
|
+
}>;
|
|
180
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
181
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
182
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
183
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
184
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
185
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
186
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
187
|
+
readonly name: import("effect/Schema").String;
|
|
188
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
189
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
190
|
+
readonly value: import("effect/Schema").String;
|
|
191
|
+
readonly color: import("effect/Schema").String;
|
|
192
|
+
}>, import("effect/Schema").Struct<{
|
|
193
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
194
|
+
readonly value: import("effect/Schema").String;
|
|
195
|
+
}>, import("effect/Schema").Struct<{
|
|
196
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
197
|
+
readonly value: import("effect/Schema").String;
|
|
198
|
+
}>]>>;
|
|
199
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
200
|
+
}>;
|
|
201
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
202
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
203
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
204
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
205
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
206
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
207
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
208
|
+
}>, import("effect/Schema").Struct<{
|
|
209
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
210
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
211
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
212
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
213
|
+
}>]>;
|
|
214
|
+
}>, import("effect/Schema").Struct<{
|
|
215
|
+
readonly data: import("effect/Schema").Struct<{
|
|
216
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
217
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
218
|
+
readonly validatorType: import("effect/Schema").Literal<"ecdsa_secp256k1">;
|
|
219
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
220
|
+
readonly accountMode: import("effect/Schema").Literal<"7702">;
|
|
221
|
+
readonly delegationVersion: import("effect/Schema").Literals<readonly ["v1.0.0", "v1.1.0"]>;
|
|
222
|
+
}>;
|
|
223
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
224
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
225
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
226
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
227
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
228
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
229
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
230
|
+
readonly name: import("effect/Schema").String;
|
|
231
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
232
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
233
|
+
readonly value: import("effect/Schema").String;
|
|
234
|
+
readonly color: import("effect/Schema").String;
|
|
235
|
+
}>, import("effect/Schema").Struct<{
|
|
236
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
237
|
+
readonly value: import("effect/Schema").String;
|
|
238
|
+
}>, import("effect/Schema").Struct<{
|
|
239
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
240
|
+
readonly value: import("effect/Schema").String;
|
|
241
|
+
}>]>>;
|
|
242
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
243
|
+
}>;
|
|
244
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
245
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
246
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
247
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
248
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
249
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
250
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
251
|
+
}>, import("effect/Schema").Struct<{
|
|
252
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
253
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
254
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
255
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
256
|
+
}>]>;
|
|
257
|
+
}>]>]>>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded>, Authorization, never> | HttpApiEndpoint.HttpApiEndpoint<"get", "GET", "/wallets/:walletId", import("effect/Schema").toCodecStringTree<import("effect/Schema").Struct<{
|
|
258
|
+
readonly walletId: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
259
|
+
}>>, never, never, never, import("effect/Schema").toCodecJson<import("effect/Schema").Union<readonly [import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
260
|
+
readonly data: import("effect/Schema").Struct<{
|
|
261
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
262
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
263
|
+
readonly validatorType: import("effect/Schema").Literal<"webauthn_p256">;
|
|
264
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
265
|
+
readonly salt: import("effect/Schema").BigIntFromString;
|
|
266
|
+
readonly entityId: import("effect/Schema").Int;
|
|
267
|
+
}>;
|
|
268
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
269
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
270
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
271
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
272
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
273
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
274
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
275
|
+
readonly name: import("effect/Schema").String;
|
|
276
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
277
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
278
|
+
readonly value: import("effect/Schema").String;
|
|
279
|
+
readonly color: import("effect/Schema").String;
|
|
280
|
+
}>, import("effect/Schema").Struct<{
|
|
281
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
282
|
+
readonly value: import("effect/Schema").String;
|
|
283
|
+
}>, import("effect/Schema").Struct<{
|
|
284
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
285
|
+
readonly value: import("effect/Schema").String;
|
|
286
|
+
}>]>>;
|
|
287
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
288
|
+
}>;
|
|
289
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
290
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
291
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
292
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
293
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
294
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
295
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
296
|
+
}>, import("effect/Schema").Struct<{
|
|
297
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
298
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
299
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
300
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
301
|
+
}>]>;
|
|
302
|
+
}>, import("effect/Schema").Struct<{
|
|
303
|
+
readonly data: import("effect/Schema").Struct<{
|
|
304
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
305
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
306
|
+
readonly validatorType: import("effect/Schema").Literal<"ecdsa_secp256k1">;
|
|
307
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
308
|
+
readonly accountMode: import("effect/Schema").Literal<"7702">;
|
|
309
|
+
readonly delegationVersion: import("effect/Schema").Literals<readonly ["v1.0.0", "v1.1.0"]>;
|
|
310
|
+
}>;
|
|
311
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
312
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
313
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
314
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
315
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
316
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
317
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
318
|
+
readonly name: import("effect/Schema").String;
|
|
319
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
320
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
321
|
+
readonly value: import("effect/Schema").String;
|
|
322
|
+
readonly color: import("effect/Schema").String;
|
|
323
|
+
}>, import("effect/Schema").Struct<{
|
|
324
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
325
|
+
readonly value: import("effect/Schema").String;
|
|
326
|
+
}>, import("effect/Schema").Struct<{
|
|
327
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
328
|
+
readonly value: import("effect/Schema").String;
|
|
329
|
+
}>]>>;
|
|
330
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
331
|
+
}>;
|
|
332
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
333
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
334
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
335
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
336
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
337
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
338
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
339
|
+
}>, import("effect/Schema").Struct<{
|
|
340
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
341
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
342
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
343
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
344
|
+
}>]>;
|
|
345
|
+
}>]>]>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded | typeof WalletNotFoundError>, Authorization, never> | HttpApiEndpoint.HttpApiEndpoint<"getPasskeyOwner", "GET", "/wallets/:walletId/passkey-owner", import("effect/Schema").toCodecStringTree<import("effect/Schema").Struct<{
|
|
346
|
+
readonly walletId: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
347
|
+
}>>, never, never, never, import("effect/Schema").toCodecJson<import("effect/Schema").Struct<{
|
|
348
|
+
readonly walletId: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
349
|
+
readonly owner: import("effect/Schema").NullOr<import("effect/Schema").Struct<{
|
|
350
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
351
|
+
readonly publicKeyHex: import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>;
|
|
352
|
+
readonly credentialId: import("effect/Schema").String;
|
|
353
|
+
readonly rpId: import("effect/Schema").String;
|
|
354
|
+
}>>;
|
|
355
|
+
}>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded | typeof WalletNotFoundError>, Authorization, never> | HttpApiEndpoint.HttpApiEndpoint<"getPortfolio", "GET", "/wallets/:walletId/portfolio", import("effect/Schema").toCodecStringTree<import("effect/Schema").Struct<{
|
|
356
|
+
readonly walletId: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
357
|
+
}>>, import("effect/Schema").toCodecStringTree<import("effect/Schema").Struct<{
|
|
358
|
+
readonly cursor: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
359
|
+
readonly pageSize: import("effect/Schema").optionalKey<import("effect/Schema").Int>;
|
|
360
|
+
}>>, never, never, import("effect/Schema").toCodecJson<import("effect/Schema").Struct<{
|
|
361
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
362
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
363
|
+
readonly summary: import("effect/Schema").Struct<{
|
|
364
|
+
readonly assetCount: import("effect/Schema").Int;
|
|
365
|
+
readonly pricedAssetCount: import("effect/Schema").Int;
|
|
366
|
+
readonly unpricedAssetCount: import("effect/Schema").Int;
|
|
367
|
+
readonly totalValueUsd: import("effect/Schema").String;
|
|
368
|
+
}>;
|
|
369
|
+
readonly chains: import("effect/Schema").$Array<import("effect/Schema").Struct<{
|
|
370
|
+
readonly chainId: import("effect/Schema").Literals<readonly ["eip155:1", "eip155:10", "eip155:8453", "eip155:42161", "eip155:84532", "eip155:421614", "eip155:11155111", "eip155:11155420"]>;
|
|
371
|
+
readonly assetCount: import("effect/Schema").Int;
|
|
372
|
+
readonly pricedAssetCount: import("effect/Schema").Int;
|
|
373
|
+
readonly totalValueUsd: import("effect/Schema").String;
|
|
374
|
+
}>>;
|
|
375
|
+
readonly items: import("effect/Schema").$Array<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
376
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
377
|
+
readonly chainId: import("effect/Schema").Literals<readonly ["eip155:1", "eip155:10", "eip155:8453", "eip155:42161", "eip155:84532", "eip155:421614", "eip155:11155111", "eip155:11155420"]>;
|
|
378
|
+
readonly type: import("effect/Schema").Literals<readonly ["native", "erc20"]>;
|
|
379
|
+
readonly tokenAddress: import("effect/Schema").NullOr<import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">>;
|
|
380
|
+
readonly rawBalance: import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>;
|
|
381
|
+
readonly formattedBalance: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
382
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
383
|
+
readonly name: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
384
|
+
readonly symbol: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
385
|
+
readonly decimals: import("effect/Schema").NullOr<import("effect/Schema").Int>;
|
|
386
|
+
readonly logoUrl: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
387
|
+
}>;
|
|
388
|
+
readonly addressMetadata: import("effect/Schema").NullOr<import("effect/Schema").Struct<{
|
|
389
|
+
readonly schemaVersion: import("effect/Schema").Literal<1>;
|
|
390
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
391
|
+
readonly chainId: import("effect/Schema").Literals<readonly ["eip155:1", "eip155:10", "eip155:8453", "eip155:42161", "eip155:84532", "eip155:421614", "eip155:11155111", "eip155:11155420"]>;
|
|
392
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
393
|
+
readonly kind: import("effect/Schema").Literals<readonly ["eoa", "contract", "fungible-token", "nft-contract", "unknown"]>;
|
|
394
|
+
readonly identity: import("effect/Schema").Struct<{
|
|
395
|
+
readonly displayName: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
396
|
+
readonly description: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
397
|
+
readonly iconUrl: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
398
|
+
}>;
|
|
399
|
+
readonly trust: import("effect/Schema").Struct<{
|
|
400
|
+
readonly reputation: import("effect/Schema").Literals<readonly ["credible", "neutral", "suspicious", "scam", "unknown"]>;
|
|
401
|
+
readonly isScam: import("effect/Schema").Boolean;
|
|
402
|
+
readonly isSourceVerified: import("effect/Schema").NullOr<import("effect/Schema").Boolean>;
|
|
403
|
+
readonly signals: import("effect/Schema").$Array<import("effect/Schema").Literals<readonly ["blockscout", "metadata-tag", "token-market"]>>;
|
|
404
|
+
}>;
|
|
405
|
+
readonly tags: import("effect/Schema").$Array<import("effect/Schema").Struct<{
|
|
406
|
+
readonly type: import("effect/Schema").Literals<readonly ["name", "category", "protocol", "information", "classifier", "note"]>;
|
|
407
|
+
readonly slug: import("effect/Schema").String;
|
|
408
|
+
readonly name: import("effect/Schema").String;
|
|
409
|
+
}>>;
|
|
410
|
+
readonly token: import("effect/Schema").NullOr<import("effect/Schema").Struct<{
|
|
411
|
+
readonly standard: import("effect/Schema").Literals<readonly ["erc20", "erc721", "erc1155", "other"]>;
|
|
412
|
+
readonly name: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
413
|
+
readonly symbol: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
414
|
+
readonly decimals: import("effect/Schema").NullOr<import("effect/Schema").Int>;
|
|
415
|
+
readonly logoUrl: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
416
|
+
}>>;
|
|
417
|
+
readonly contract: import("effect/Schema").NullOr<import("effect/Schema").Struct<{
|
|
418
|
+
readonly name: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
419
|
+
readonly proxyType: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
420
|
+
readonly implementationAddress: import("effect/Schema").NullOr<import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">>;
|
|
421
|
+
readonly implementationName: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
422
|
+
}>>;
|
|
423
|
+
readonly provenance: import("effect/Schema").Struct<{
|
|
424
|
+
readonly provider: import("effect/Schema").Literal<"blockscout">;
|
|
425
|
+
readonly observedAt: import("effect/Schema").DateTimeUtcFromString;
|
|
426
|
+
}>;
|
|
427
|
+
}>>;
|
|
428
|
+
readonly usdPrice: import("effect/Schema").NullOr<import("effect/Schema").Struct<{
|
|
429
|
+
readonly value: import("effect/Schema").String;
|
|
430
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromString;
|
|
431
|
+
}>>;
|
|
432
|
+
}>]>>;
|
|
433
|
+
readonly nextCursor: import("effect/Schema").NullOr<import("effect/Schema").String>;
|
|
434
|
+
readonly partialFailures: import("effect/Schema").$Array<import("effect/Schema").Struct<{
|
|
435
|
+
readonly chainId: import("effect/Schema").Literals<readonly ["eip155:1", "eip155:10", "eip155:8453", "eip155:42161", "eip155:84532", "eip155:421614", "eip155:11155111", "eip155:11155420"]>;
|
|
436
|
+
readonly code: import("effect/Schema").Literal<"PROVIDER_UNAVAILABLE">;
|
|
437
|
+
}>>;
|
|
438
|
+
}>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded | typeof PortfolioUnavailableError | typeof WalletNotFoundError>, Authorization, never> | HttpApiEndpoint.HttpApiEndpoint<"update", "POST", "/wallets/:walletId/update", import("effect/Schema").toCodecStringTree<import("effect/Schema").Struct<{
|
|
439
|
+
readonly walletId: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
440
|
+
}>>, never, import("effect/Schema").toCodecJson<import("effect/Schema").Struct<{
|
|
441
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
442
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
443
|
+
readonly name: import("effect/Schema").String;
|
|
444
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
445
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
446
|
+
readonly value: import("effect/Schema").String;
|
|
447
|
+
readonly color: import("effect/Schema").String;
|
|
448
|
+
}>, import("effect/Schema").Struct<{
|
|
449
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
450
|
+
readonly value: import("effect/Schema").String;
|
|
451
|
+
}>, import("effect/Schema").Struct<{
|
|
452
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
453
|
+
readonly value: import("effect/Schema").String;
|
|
454
|
+
}>]>>;
|
|
455
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
456
|
+
}>;
|
|
457
|
+
}>>, never, import("effect/Schema").toCodecJson<import("effect/Schema").Union<readonly [import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
458
|
+
readonly data: import("effect/Schema").Struct<{
|
|
459
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
460
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
461
|
+
readonly validatorType: import("effect/Schema").Literal<"webauthn_p256">;
|
|
462
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
463
|
+
readonly salt: import("effect/Schema").BigIntFromString;
|
|
464
|
+
readonly entityId: import("effect/Schema").Int;
|
|
465
|
+
}>;
|
|
466
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
467
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
468
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
469
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
470
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
471
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
472
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
473
|
+
readonly name: import("effect/Schema").String;
|
|
474
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
475
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
476
|
+
readonly value: import("effect/Schema").String;
|
|
477
|
+
readonly color: import("effect/Schema").String;
|
|
478
|
+
}>, import("effect/Schema").Struct<{
|
|
479
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
480
|
+
readonly value: import("effect/Schema").String;
|
|
481
|
+
}>, import("effect/Schema").Struct<{
|
|
482
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
483
|
+
readonly value: import("effect/Schema").String;
|
|
484
|
+
}>]>>;
|
|
485
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
486
|
+
}>;
|
|
487
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
488
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
489
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
490
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
491
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
492
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
493
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
494
|
+
}>, import("effect/Schema").Struct<{
|
|
495
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
496
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
497
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
498
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
499
|
+
}>]>;
|
|
500
|
+
}>, import("effect/Schema").Struct<{
|
|
501
|
+
readonly data: import("effect/Schema").Struct<{
|
|
502
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
503
|
+
readonly modularAccountVersion: import("effect/Schema").Literal<"2.0.0">;
|
|
504
|
+
readonly validatorType: import("effect/Schema").Literal<"ecdsa_secp256k1">;
|
|
505
|
+
readonly entryPointVersion: import("effect/Schema").Literal<"0.7">;
|
|
506
|
+
readonly accountMode: import("effect/Schema").Literal<"7702">;
|
|
507
|
+
readonly delegationVersion: import("effect/Schema").Literals<readonly ["v1.0.0", "v1.1.0"]>;
|
|
508
|
+
}>;
|
|
509
|
+
readonly implementation: import("effect/Schema").Literal<"alchemy-modular-v2">;
|
|
510
|
+
readonly createdAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
511
|
+
readonly updatedAt: import("effect/Schema").DateTimeUtcFromDate;
|
|
512
|
+
readonly id: import("effect/Schema").brand<import("effect/Schema").String, "WalletId">;
|
|
513
|
+
readonly organizationId: import("effect/Schema").brand<import("effect/Schema").String, "OrganizationId">;
|
|
514
|
+
readonly metadata: import("effect/Schema").Struct<{
|
|
515
|
+
readonly version: import("effect/Schema").Literal<1>;
|
|
516
|
+
readonly name: import("effect/Schema").String;
|
|
517
|
+
readonly logo: import("effect/Schema").optionalKey<import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
518
|
+
readonly type: import("effect/Schema").Literal<"icon">;
|
|
519
|
+
readonly value: import("effect/Schema").String;
|
|
520
|
+
readonly color: import("effect/Schema").String;
|
|
521
|
+
}>, import("effect/Schema").Struct<{
|
|
522
|
+
readonly type: import("effect/Schema").Literal<"emoji">;
|
|
523
|
+
readonly value: import("effect/Schema").String;
|
|
524
|
+
}>, import("effect/Schema").Struct<{
|
|
525
|
+
readonly type: import("effect/Schema").Literal<"image">;
|
|
526
|
+
readonly value: import("effect/Schema").String;
|
|
527
|
+
}>]>>;
|
|
528
|
+
readonly description: import("effect/Schema").optionalKey<import("effect/Schema").String>;
|
|
529
|
+
}>;
|
|
530
|
+
readonly status: import("effect/Schema").Literals<readonly ["active", "frozen", "archived"]>;
|
|
531
|
+
readonly namespace: import("effect/Schema").Literal<"eip155">;
|
|
532
|
+
readonly address: import("effect/Schema").brand<import("effect/Schema").TemplateLiteral<readonly ["0x", import("effect/Schema").String]>, "EthereumAddress">;
|
|
533
|
+
readonly owner: import("effect/Schema").Union<readonly [import("effect/Schema").Struct<{
|
|
534
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
535
|
+
readonly custody: import("effect/Schema").Literal<"local">;
|
|
536
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
537
|
+
}>, import("effect/Schema").Struct<{
|
|
538
|
+
readonly signingKeyId: import("effect/Schema").brand<import("effect/Schema").String, "SigningKeyId">;
|
|
539
|
+
readonly custody: import("effect/Schema").Literal<"namera-managed">;
|
|
540
|
+
readonly algorithm: import("effect/Schema").Literals<readonly ["p256", "secp256k1", "ed25519"]>;
|
|
541
|
+
readonly protectionLevel: import("effect/Schema").Literals<readonly ["software", "hsm"]>;
|
|
542
|
+
}>]>;
|
|
543
|
+
}>]>]>>, import("effect/Schema").toCodecJson<HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").Forbidden> | HttpApiSchema.asNoContent<typeof import("effect/unstable/httpapi/HttpApiError").InternalServerError> | typeof import("@namera-ai/protocol").RateLimitExceeded | typeof WalletNotFoundError>, Authorization, never>, false>;
|
|
544
|
+
declare class WalletGroup extends WalletGroup_base {}
|
|
545
|
+
//#endregion
|
|
546
|
+
export { WalletGroup };
|
|
547
|
+
//# sourceMappingURL=wallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","names":[],"sources":["../../src/routes/wallet.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA4Ba,oBAAoB"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { CommonErrors } from "../common.js";
|
|
2
|
+
import { Authorization } from "../middlewares/auth.js";
|
|
3
|
+
import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi";
|
|
4
|
+
import { BillingErrors, PasskeyRegistrationError, PasskeyVerificationError, PortfolioUnavailableError, WalletCreationError, WalletCustodyUnavailableError, WalletNotFoundError } from "@namera-ai/protocol";
|
|
5
|
+
import { CreateWalletRequest, CreateWalletResponse, GetWalletPasskeyOwnerResponse, GetWalletPortfolioRequest, GetWalletRequest, GetWalletResponse, ListWalletsResponse, PasskeyRegistrationOptionsResponse, PortfolioResponse, UpdateWalletRequest, UpdateWalletResponse } from "@namera-ai/protocol/dto";
|
|
6
|
+
|
|
7
|
+
//#region src/routes/wallet.ts
|
|
8
|
+
var WalletGroup = class extends HttpApiGroup.make("wallet").add(HttpApiEndpoint.post("createPasskeyRegistrationOptions", "/passkey/registration-options", {
|
|
9
|
+
success: PasskeyRegistrationOptionsResponse,
|
|
10
|
+
error: [PasskeyRegistrationError, ...CommonErrors]
|
|
11
|
+
}).annotate(OpenApi.Summary, "Create passkey registration options for a wallet"), HttpApiEndpoint.post("create", "/", {
|
|
12
|
+
payload: CreateWalletRequest,
|
|
13
|
+
success: CreateWalletResponse.pipe(HttpApiSchema.status("Created")),
|
|
14
|
+
error: [
|
|
15
|
+
WalletCreationError,
|
|
16
|
+
WalletCustodyUnavailableError,
|
|
17
|
+
PasskeyVerificationError,
|
|
18
|
+
...BillingErrors,
|
|
19
|
+
...CommonErrors
|
|
20
|
+
]
|
|
21
|
+
}).annotate(OpenApi.Summary, "Create a passkey-owned wallet (managed custody is disabled in beta)"), HttpApiEndpoint.get("list", "/", {
|
|
22
|
+
success: ListWalletsResponse,
|
|
23
|
+
error: CommonErrors
|
|
24
|
+
}).annotate(OpenApi.Summary, "List wallets for the active organization"), HttpApiEndpoint.get("get", "/:walletId", {
|
|
25
|
+
params: GetWalletRequest,
|
|
26
|
+
success: GetWalletResponse,
|
|
27
|
+
error: [WalletNotFoundError, ...CommonErrors]
|
|
28
|
+
}).annotate(OpenApi.Summary, "Get a wallet in the active organization"), HttpApiEndpoint.get("getPasskeyOwner", "/:walletId/passkey-owner", {
|
|
29
|
+
params: GetWalletRequest,
|
|
30
|
+
success: GetWalletPasskeyOwnerResponse,
|
|
31
|
+
error: [WalletNotFoundError, ...CommonErrors]
|
|
32
|
+
}).annotate(OpenApi.Summary, "Read public passkey owner details (organization users only)"), HttpApiEndpoint.get("getPortfolio", "/:walletId/portfolio", {
|
|
33
|
+
params: GetWalletRequest,
|
|
34
|
+
query: GetWalletPortfolioRequest,
|
|
35
|
+
success: PortfolioResponse,
|
|
36
|
+
error: [
|
|
37
|
+
WalletNotFoundError,
|
|
38
|
+
PortfolioUnavailableError,
|
|
39
|
+
...CommonErrors
|
|
40
|
+
]
|
|
41
|
+
}).annotate(OpenApi.Summary, "Get the paginated cross-chain portfolio for a wallet"), HttpApiEndpoint.post("update", "/:walletId/update", {
|
|
42
|
+
params: GetWalletRequest,
|
|
43
|
+
payload: UpdateWalletRequest,
|
|
44
|
+
success: UpdateWalletResponse,
|
|
45
|
+
error: [WalletNotFoundError, ...CommonErrors]
|
|
46
|
+
}).annotate(OpenApi.Summary, "Update wallet metadata")).annotate(OpenApi.Description, "Organization wallets and smart accounts").middleware(Authorization).prefix("/wallets") {};
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { WalletGroup };
|
|
50
|
+
//# sourceMappingURL=wallet.js.map
|