@capxul/sdk-react 0.2.0-alpha.4 → 1.0.0-alpha.6

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.
@@ -0,0 +1,263 @@
1
+ import { ReactNode } from "react";
2
+ import { QueryClient, UseMutationResult, UseQueryResult } from "@tanstack/react-query";
3
+ import { Account, AccountLifecycle, AccountRequirement, AssignRoleInput, CapxulClient, CapxulSigner, CreateOrgInput, InviteMemberInput, MemberView, OrgId, OrgSpendInput, OrgSpendResult, OrgView, Profile, RemoveMemberInput, RoleView, Session, TransferInput, TransferResult } from "@capxul/sdk";
4
+ import { CapxulError } from "@capxul/config";
5
+ import { Account as Account$1, AccountId, Money, SubAccount, SubAccountId } from "@capxul/types";
6
+
7
+ //#region src/provider.d.ts
8
+ type CapxulProviderSharedProps = {
9
+ /** Bring your own QueryClient; otherwise the provider creates one. */readonly queryClient?: QueryClient;
10
+ readonly children: ReactNode;
11
+ };
12
+ /** Browser / app path — the provider bootstraps the client from a publishable key. */
13
+ type CapxulProviderPublishableKeyProps = CapxulProviderSharedProps & {
14
+ readonly publishableKey: string;
15
+ readonly client?: never; /** Init-time account readiness target. Default `"none"`. */
16
+ readonly requirement?: AccountRequirement;
17
+ /**
18
+ * Optional consumer-held signer for the deploy lane. Omitted in browser apps
19
+ * with `requirement: "deployed"` — the SDK wires Openfort from bootstrap.
20
+ */
21
+ readonly signer?: CapxulSigner;
22
+ };
23
+ /**
24
+ * Node / server / test path — a pre-built client is supplied; lifecycle stays
25
+ * with the caller. Mutually exclusive with `publishableKey`.
26
+ */
27
+ type CapxulProviderInjectedClientProps = CapxulProviderSharedProps & {
28
+ readonly client: CapxulClient;
29
+ readonly publishableKey?: never;
30
+ readonly requirement?: never;
31
+ readonly signer?: never;
32
+ };
33
+ type CapxulProviderProps = CapxulProviderPublishableKeyProps | CapxulProviderInjectedClientProps;
34
+ declare function CapxulProvider(props: CapxulProviderProps): import("react/jsx-runtime").JSX.Element;
35
+ //#endregion
36
+ //#region src/internal/capxul-bootstrap-context.d.ts
37
+ type CapxulBootstrapStatus = "bootstrapping" | "ready" | "error";
38
+ interface CapxulBootstrapState {
39
+ readonly status: CapxulBootstrapStatus;
40
+ readonly error: CapxulError | null;
41
+ readonly retry: () => void;
42
+ }
43
+ declare function useCapxul(): CapxulBootstrapState;
44
+ //#endregion
45
+ //#region src/hooks/use-capxul-session.d.ts
46
+ type UseCapxulSessionReturn = UseQueryResult<Session | null, CapxulError>;
47
+ declare function useCapxulSession(): UseCapxulSessionReturn;
48
+ //#endregion
49
+ //#region src/hooks/use-capxul-profile.d.ts
50
+ type UseCapxulProfileReturn = UseQueryResult<Profile | null, CapxulError>;
51
+ declare function useCapxulProfile(): UseCapxulProfileReturn;
52
+ //#endregion
53
+ //#region src/hooks/use-capxul-account-lifecycle.d.ts
54
+ interface UseCapxulAccountLifecycleReturn {
55
+ readonly lifecycle: AccountLifecycle;
56
+ readonly isSettingUp: boolean;
57
+ readonly error: CapxulError | null;
58
+ readonly isLoading: boolean;
59
+ readonly isFetching: boolean;
60
+ readonly isError: boolean;
61
+ readonly retry: UseMutationResult<AccountLifecycle, CapxulError, void>["mutateAsync"];
62
+ readonly isRetrying: boolean;
63
+ }
64
+ declare function useCapxulAccountLifecycle(): UseCapxulAccountLifecycleReturn;
65
+ //#endregion
66
+ //#region src/hooks/use-capxul-account-balance.d.ts
67
+ type UseCapxulAccountBalanceReturn = UseQueryResult<Account, CapxulError>;
68
+ type UseCapxulAccountBalanceOptions = {
69
+ /** When false, skips the Convex readBalance action until the account ladder is ready. */readonly enabled?: boolean;
70
+ };
71
+ declare function useCapxulAccountBalance(options?: UseCapxulAccountBalanceOptions): UseCapxulAccountBalanceReturn;
72
+ //#endregion
73
+ //#region src/hooks/use-capxul-account-fund.d.ts
74
+ type UseCapxulAccountFundReturn = UseMutationResult<{
75
+ readonly txHash: string;
76
+ }, CapxulError, Money>;
77
+ declare function useCapxulAccountFund(): UseCapxulAccountFundReturn;
78
+ //#endregion
79
+ //#region src/hooks/use-capxul-sign-in.d.ts
80
+ interface SignInInput {
81
+ readonly email: string;
82
+ }
83
+ interface SignInSuccess {
84
+ readonly sessionId: string;
85
+ readonly expiresAt: number;
86
+ }
87
+ type UseCapxulSignInReturn = UseMutationResult<SignInSuccess, CapxulError, SignInInput>;
88
+ declare function useCapxulSignIn(): UseCapxulSignInReturn;
89
+ //#endregion
90
+ //#region src/hooks/use-capxul-verify-otp.d.ts
91
+ interface VerifyOtpInput {
92
+ readonly email: string;
93
+ readonly code: string;
94
+ }
95
+ type UseCapxulVerifyOtpReturn = UseMutationResult<Session, CapxulError, VerifyOtpInput>;
96
+ declare function useCapxulVerifyOtp(): UseCapxulVerifyOtpReturn;
97
+ //#endregion
98
+ //#region src/hooks/use-capxul-sign-out.d.ts
99
+ type UseCapxulSignOutReturn = UseMutationResult<void, CapxulError, void>;
100
+ declare function useCapxulSignOut(): UseCapxulSignOutReturn;
101
+ //#endregion
102
+ //#region src/hooks/use-capxul-sub-accounts.d.ts
103
+ type UseCapxulSubAccountsListOptions = {
104
+ readonly enabled?: boolean;
105
+ };
106
+ type UseCapxulSubAccountsListReturn = UseQueryResult<readonly SubAccount[], CapxulError>;
107
+ declare function useCapxulSubAccountsList(accountId: AccountId | undefined, options?: UseCapxulSubAccountsListOptions): UseCapxulSubAccountsListReturn;
108
+ type UseCapxulSubAccountCreateReturn = UseMutationResult<SubAccount, CapxulError, {
109
+ readonly accountId: AccountId;
110
+ readonly name: string;
111
+ }>;
112
+ declare function useCapxulSubAccountCreate(): UseCapxulSubAccountCreateReturn;
113
+ type UseCapxulSubAccountRenameReturn = UseMutationResult<SubAccount, CapxulError, {
114
+ readonly accountId: AccountId;
115
+ readonly subAccountId: SubAccountId;
116
+ readonly name: string;
117
+ }>;
118
+ declare function useCapxulSubAccountRename(): UseCapxulSubAccountRenameReturn;
119
+ type UseCapxulSubAccountDeleteReturn = UseMutationResult<void, CapxulError, {
120
+ readonly accountId: AccountId;
121
+ readonly subAccountId: SubAccountId;
122
+ }>;
123
+ declare function useCapxulSubAccountDelete(): UseCapxulSubAccountDeleteReturn;
124
+ /**
125
+ * Move money between two of the SAME Account's balances (canon §5/§12). The
126
+ * consumer-facing labels are "Add money" (main → sub) and "Move money out"
127
+ * (sub → main), both calling `transfer`. `accountId` is carried only to
128
+ * invalidate the right cache keys; the SDK input itself is `{ from, to, amount }`.
129
+ */
130
+ type UseCapxulTransferReturn = UseMutationResult<TransferResult, CapxulError, {
131
+ readonly accountId: AccountId;
132
+ } & TransferInput>;
133
+ declare function useCapxulTransfer(): UseCapxulTransferReturn;
134
+ //#endregion
135
+ //#region src/hooks/use-capxul-orgs.d.ts
136
+ /**
137
+ * List the Orgs you belong to (canon §C1 "Org list" / §C3). Binds directly to
138
+ * the locked `capxul.orgs()` SDK method.
139
+ */
140
+ type UseCapxulOrgsReturn = UseQueryResult<readonly OrgView[], CapxulError>;
141
+ type UseCapxulOrgsOptions = {
142
+ /**
143
+ * Gate the query on auth readiness. `client.orgs()` is a session-scoped
144
+ * authenticated read; firing it before the session token settles surfaces a
145
+ * spurious `NOT_AUTHENTICATED`. Consumers pass `enabled: <auth-ready>` (e.g.
146
+ * "the Organization surface is active") — mirrors `useCapxulSubAccountsList`.
147
+ * Defaults to `true` to preserve the bare `useCapxulOrgs()` call shape.
148
+ */
149
+ readonly enabled?: boolean;
150
+ };
151
+ declare function useCapxulOrgs(options?: UseCapxulOrgsOptions): UseCapxulOrgsReturn;
152
+ //#endregion
153
+ //#region src/hooks/use-capxul-org.d.ts
154
+ type UseCapxulOrgOptions = {
155
+ readonly enabled?: boolean;
156
+ };
157
+ /**
158
+ * A single Org you belong to, resolved from `capxul.orgs()` and narrowed to the
159
+ * requested `orgId` (canon §C3). Returns `null` when the Org is not in your list.
160
+ * Gated by `orgId !== undefined`. RED until S1.
161
+ */
162
+ type UseCapxulOrgReturn = UseQueryResult<OrgView | null, CapxulError>;
163
+ declare function useCapxulOrg(orgId: OrgId | undefined, options?: UseCapxulOrgOptions): UseCapxulOrgReturn;
164
+ //#endregion
165
+ //#region src/hooks/use-capxul-org-members.d.ts
166
+ type UseCapxulOrgMembersOptions = {
167
+ readonly enabled?: boolean;
168
+ };
169
+ /**
170
+ * The members of an Org (canon §C1 "Members" / §C3, D8/D9). Binds directly to
171
+ * the entity-scoped `capxul.org(orgId).members()` (D13). Gated by
172
+ * `orgId !== undefined`. RED until S3.
173
+ */
174
+ type UseCapxulOrgMembersReturn = UseQueryResult<readonly MemberView[], CapxulError>;
175
+ declare function useCapxulOrgMembers(orgId: OrgId | undefined, options?: UseCapxulOrgMembersOptions): UseCapxulOrgMembersReturn;
176
+ //#endregion
177
+ //#region src/hooks/use-capxul-org-roles.d.ts
178
+ type UseCapxulOrgRolesOptions = {
179
+ readonly enabled?: boolean;
180
+ };
181
+ /**
182
+ * The roles seeded on an Org (canon §C1 "Roles" / §C3, D4/D6). Binds directly
183
+ * to the entity-scoped `capxul.org(orgId).roles()` (D13). Gated by
184
+ * `orgId !== undefined`. RED until S2.
185
+ */
186
+ type UseCapxulOrgRolesReturn = UseQueryResult<readonly RoleView[], CapxulError>;
187
+ declare function useCapxulOrgRoles(orgId: OrgId | undefined, options?: UseCapxulOrgRolesOptions): UseCapxulOrgRolesReturn;
188
+ //#endregion
189
+ //#region src/hooks/use-capxul-org-deploy-roles.d.ts
190
+ type UseCapxulOrgDeployRolesReturn = UseMutationResult<readonly RoleView[], CapxulError, OrgId>;
191
+ declare function useCapxulOrgDeployRoles(): UseCapxulOrgDeployRolesReturn;
192
+ //#endregion
193
+ //#region src/hooks/use-capxul-org-treasury.d.ts
194
+ type UseCapxulOrgTreasuryOptions = {
195
+ readonly enabled?: boolean;
196
+ };
197
+ /**
198
+ * The Org treasury — the real M2 `Account` over the Org Safe (canon §C3, D3).
199
+ * NEVER `AccountStatus` (the deploy-readiness ladder, no balance). Binds
200
+ * directly to the entity-scoped `capxul.org(orgId).treasury()` (D13). Gated by
201
+ * `orgId !== undefined`. RED until S1.
202
+ */
203
+ type UseCapxulOrgTreasuryReturn = UseQueryResult<Account$1, CapxulError>;
204
+ declare function useCapxulOrgTreasury(orgId: OrgId | undefined, options?: UseCapxulOrgTreasuryOptions): UseCapxulOrgTreasuryReturn;
205
+ //#endregion
206
+ //#region src/hooks/use-capxul-create-org.d.ts
207
+ /**
208
+ * Create an Org (canon §C2 J1 / §C3, S1). Binds directly to the locked
209
+ * `capxul.createOrg(input)` SDK method. On success, invalidates the org list.
210
+ * RED until S1 — `mutate` rejects with `Errors.notImplemented("org","createOrg")`.
211
+ */
212
+ type UseCapxulCreateOrgReturn = UseMutationResult<OrgView, CapxulError, CreateOrgInput>;
213
+ declare function useCapxulCreateOrg(): UseCapxulCreateOrgReturn;
214
+ //#endregion
215
+ //#region src/hooks/use-capxul-invite-member.d.ts
216
+ /**
217
+ * Invite a member to an Org by email (canon §C2 J2 virality loop / §C3, S3, D8).
218
+ * Entity-scoped via the closed-over `orgId` (D13). Binds directly to
219
+ * `capxul.org(orgId).invite(input)`. On success, invalidates the member list.
220
+ * RED until S3 — `mutate` rejects with `Errors.notImplemented("org","invite")`.
221
+ */
222
+ type UseCapxulInviteMemberReturn = UseMutationResult<MemberView, CapxulError, InviteMemberInput>;
223
+ declare function useCapxulInviteMember(orgId: OrgId | undefined): UseCapxulInviteMemberReturn;
224
+ //#endregion
225
+ //#region src/hooks/use-capxul-remove-member.d.ts
226
+ /**
227
+ * Remove a member from an Org (canon §C2 J2 / §C3, S3, D7/D8) — drives the
228
+ * on-chain REVOKE + Convex mirror. Keyed on the member's personal Safe address
229
+ * (D7). Entity-scoped via the closed-over `orgId` (D13). Binds directly to
230
+ * `capxul.org(orgId).removeMember(input)`. On success, invalidates the member
231
+ * list. RED until S3 — `mutate` rejects with
232
+ * `Errors.notImplemented("org","removeMember")`.
233
+ */
234
+ type UseCapxulRemoveMemberReturn = UseMutationResult<void, CapxulError, RemoveMemberInput>;
235
+ declare function useCapxulRemoveMember(orgId: OrgId | undefined): UseCapxulRemoveMemberReturn;
236
+ //#endregion
237
+ //#region src/hooks/use-capxul-assign-role.d.ts
238
+ /**
239
+ * Assign a role to a member (canon §C2 J2 / §C3, S3, D7/D9) — drives the
240
+ * on-chain GRANT + Convex mirror. Keyed on the member's personal Safe address
241
+ * (D7); the `role` label maps deterministically to the on-chain `roleKey` (D9).
242
+ * Entity-scoped via the closed-over `orgId` (D13). Binds directly to
243
+ * `capxul.org(orgId).assignRole(input)`. On success, invalidates the member
244
+ * list. RED until S3 — `mutate` rejects with
245
+ * `Errors.notImplemented("org","assignRole")`.
246
+ */
247
+ type UseCapxulAssignRoleReturn = UseMutationResult<MemberView, CapxulError, AssignRoleInput>;
248
+ declare function useCapxulAssignRole(orgId: OrgId | undefined): UseCapxulAssignRoleReturn;
249
+ //#endregion
250
+ //#region src/hooks/use-capxul-org-spend.d.ts
251
+ /**
252
+ * Spend from an Org's scoped sub-account (canon §C2 J3+J4 capstone / §C3, S4,
253
+ * D5) — two-level gated (Level 1 Zodiac cap + Level 2 envelope scope/balance)
254
+ * one-UserOp spend via CapxulPayments. Entity-scoped via the closed-over
255
+ * `orgId` (D13). Binds directly to `capxul.org(orgId).spend(input)`. On success,
256
+ * invalidates the treasury (balance moved). RED until S4 — `mutate` rejects with
257
+ * `Errors.notImplemented("org","spend")`.
258
+ */
259
+ type UseCapxulOrgSpendReturn = UseMutationResult<OrgSpendResult, CapxulError, OrgSpendInput>;
260
+ declare function useCapxulOrgSpend(orgId: OrgId | undefined): UseCapxulOrgSpendReturn;
261
+ //#endregion
262
+ export { type CapxulBootstrapState, type CapxulBootstrapStatus, CapxulProvider, type CapxulProviderProps, type SignInInput, type SignInSuccess, type UseCapxulAccountBalanceOptions, type UseCapxulAccountBalanceReturn, type UseCapxulAccountFundReturn, type UseCapxulAccountLifecycleReturn, type UseCapxulAssignRoleReturn, type UseCapxulCreateOrgReturn, type UseCapxulInviteMemberReturn, type UseCapxulOrgDeployRolesReturn, type UseCapxulOrgMembersOptions, type UseCapxulOrgMembersReturn, type UseCapxulOrgOptions, type UseCapxulOrgReturn, type UseCapxulOrgRolesOptions, type UseCapxulOrgRolesReturn, type UseCapxulOrgSpendReturn, type UseCapxulOrgTreasuryOptions, type UseCapxulOrgTreasuryReturn, type UseCapxulOrgsReturn, type UseCapxulProfileReturn, type UseCapxulRemoveMemberReturn, type UseCapxulSessionReturn, type UseCapxulSignInReturn, type UseCapxulSignOutReturn, type UseCapxulSubAccountCreateReturn, type UseCapxulSubAccountDeleteReturn, type UseCapxulSubAccountRenameReturn, type UseCapxulSubAccountsListOptions, type UseCapxulSubAccountsListReturn, type UseCapxulTransferReturn, type UseCapxulVerifyOtpReturn, type VerifyOtpInput, useCapxul, useCapxulAccountBalance, useCapxulAccountFund, useCapxulAccountLifecycle, useCapxulAssignRole, useCapxulCreateOrg, useCapxulInviteMember, useCapxulOrg, useCapxulOrgDeployRoles, useCapxulOrgMembers, useCapxulOrgRoles, useCapxulOrgSpend, useCapxulOrgTreasury, useCapxulOrgs, useCapxulProfile, useCapxulRemoveMember, useCapxulSession, useCapxulSignIn, useCapxulSignOut, useCapxulSubAccountCreate, useCapxulSubAccountDelete, useCapxulSubAccountRename, useCapxulSubAccountsList, useCapxulTransfer, useCapxulVerifyOtp };
263
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/provider.tsx","../src/internal/capxul-bootstrap-context.tsx","../src/hooks/use-capxul-session.ts","../src/hooks/use-capxul-profile.ts","../src/hooks/use-capxul-account-lifecycle.ts","../src/hooks/use-capxul-account-balance.ts","../src/hooks/use-capxul-account-fund.ts","../src/hooks/use-capxul-sign-in.ts","../src/hooks/use-capxul-verify-otp.ts","../src/hooks/use-capxul-sign-out.ts","../src/hooks/use-capxul-sub-accounts.ts","../src/hooks/use-capxul-orgs.ts","../src/hooks/use-capxul-org.ts","../src/hooks/use-capxul-org-members.ts","../src/hooks/use-capxul-org-roles.ts","../src/hooks/use-capxul-org-deploy-roles.ts","../src/hooks/use-capxul-org-treasury.ts","../src/hooks/use-capxul-create-org.ts","../src/hooks/use-capxul-invite-member.ts","../src/hooks/use-capxul-remove-member.ts","../src/hooks/use-capxul-assign-role.ts","../src/hooks/use-capxul-org-spend.ts"],"mappings":"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"}