@codemem/server 0.47.0-beta.2 → 0.47.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account/context.d.ts +2 -0
- package/dist/account/context.d.ts.map +1 -1
- package/dist/account/link-registry.d.ts +5 -0
- package/dist/account/link-registry.d.ts.map +1 -1
- package/dist/account/owner-recovery-context.d.ts +20 -0
- package/dist/account/owner-recovery-context.d.ts.map +1 -0
- package/dist/account/owner-recovery-evidence.d.ts +24 -0
- package/dist/account/owner-recovery-evidence.d.ts.map +1 -0
- package/dist/account/owner-recovery-service.d.ts +38 -0
- package/dist/account/owner-recovery-service.d.ts.map +1 -0
- package/dist/account/owner-recovery-types.d.ts +65 -0
- package/dist/account/owner-recovery-types.d.ts.map +1 -0
- package/dist/account/owner-status.d.ts +8 -0
- package/dist/account/owner-status.d.ts.map +1 -0
- package/dist/account/status.d.ts +17 -2
- package/dist/account/status.d.ts.map +1 -1
- package/dist/index.d.ts +9 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2890 -259
- package/dist/index.js.map +1 -1
- package/dist/routes/account-owner-recovery.d.ts +7 -0
- package/dist/routes/account-owner-recovery.d.ts.map +1 -0
- package/dist/routes/device-rename.d.ts +7 -7
- package/dist/routes/device-rename.d.ts.map +1 -1
- package/dist/routes/file-context.d.ts +4 -0
- package/dist/routes/file-context.d.ts.map +1 -0
- package/dist/routes/memory-tools.d.ts +1 -2
- package/dist/routes/memory-tools.d.ts.map +1 -1
- package/dist/routes/memory.d.ts.map +1 -1
- package/dist/routes/pack.d.ts.map +1 -1
- package/package.json +3 -3
- package/static/app.js +43 -43
- package/static/app.js.br +0 -0
- package/static/app.js.gz +0 -0
- package/static/index.html +24 -2
|
@@ -13,6 +13,8 @@ export interface AccountContext extends AccountProfile {
|
|
|
13
13
|
coordinatorUrl: string;
|
|
14
14
|
groupId: string;
|
|
15
15
|
fingerprint: string;
|
|
16
|
+
/** Present on real profile contexts; optional for legacy injected readers. */
|
|
17
|
+
publicKeyHash?: string;
|
|
16
18
|
fileIdentity: {
|
|
17
19
|
dev: string;
|
|
18
20
|
ino: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/account/context.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,YAAY,GACrB,OAAO,GACP,4BAA4B,GAC5B,yBAAyB,GACzB,0BAA0B,GAC1B,oBAAoB,GACpB,sBAAsB,CAAC;AAC1B,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,cAAe,SAAQ,cAAc;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AACD,MAAM,MAAM,oBAAoB,GAC7B;IACA,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAC9B,GACD;IAAE,KAAK,EAAE,8BAA8B,GAAG,6BAA6B,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,oBAAoB,CAAC;AAC9E,MAAM,WAAW,2BAA2B;IAC3C,UAAU,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;IACxC,UAAU,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/account/context.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,YAAY,GACrB,OAAO,GACP,4BAA4B,GAC5B,yBAAyB,GACzB,0BAA0B,GAC1B,oBAAoB,GACpB,sBAAsB,CAAC;AAC1B,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,cAAe,SAAQ,cAAc;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AACD,MAAM,MAAM,oBAAoB,GAC7B;IACA,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAC9B,GACD;IAAE,KAAK,EAAE,8BAA8B,GAAG,6BAA6B,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,oBAAoB,CAAC;AAC9E,MAAM,WAAW,2BAA2B;IAC3C,UAAU,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;IACxC,UAAU,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AA8GD,qFAAqF;AACrF,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,2BAA2B,GAClC,oBAAoB,CAQtB"}
|
|
@@ -23,6 +23,7 @@ export type AccountLinkStartResult = {
|
|
|
23
23
|
error: "account_shutting_down" | "account_context_changed";
|
|
24
24
|
};
|
|
25
25
|
export interface AccountLinkRegistry {
|
|
26
|
+
tryReserveRecovery?(): AccountRecoveryReservation | null;
|
|
26
27
|
start(options: {
|
|
27
28
|
intent?: "connect" | "refresh" | "disconnect";
|
|
28
29
|
context: AccountContext;
|
|
@@ -39,6 +40,10 @@ export interface AccountLinkRegistry {
|
|
|
39
40
|
cancel(operationId: string): AccountLinkOperationV1 | null;
|
|
40
41
|
close(): Promise<void>;
|
|
41
42
|
}
|
|
43
|
+
export interface AccountRecoveryReservation {
|
|
44
|
+
isCurrent(): boolean;
|
|
45
|
+
release(): void;
|
|
46
|
+
}
|
|
42
47
|
export interface AccountLinkRegistryOptions {
|
|
43
48
|
readContext: AccountContextReader;
|
|
44
49
|
link?: typeof linkCoordinatorAccount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-registry.d.ts","sourceRoot":"","sources":["../../src/account/link-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,wBAAwB,EACxB,sBAAsB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzE,KAAK,gCAAgC,GAAG,UAAU,CACjD,OAAO,sBAAsB,CAC7B,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;AAE1B,MAAM,MAAM,kBAAkB,GAC3B,yBAAyB,GACzB,uBAAuB,GACvB,oBAAoB,GACpB,gBAAgB,GAChB,iBAAiB,GACjB,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,mBAAmB,GACnB,cAAc,GACd,0BAA0B,GAC1B,uBAAuB,CAAC;AAC3B,MAAM,WAAW,sBAAsB;IACtC,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,UAAU,GAAG,kBAAkB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,iBAAiB,CAAC;IAClG,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACnC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AACD,MAAM,MAAM,sBAAsB,GAC/B;IAAE,SAAS,EAAE,sBAAsB,CAAA;CAAE,GACrC;IAAE,KAAK,EAAE,0BAA0B,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,KAAK,EAAE,uBAAuB,GAAG,yBAAyB,CAAA;CAAE,CAAC;AAClE,MAAM,WAAW,mBAAmB;IACnC,KAAK,CAAC,OAAO,EAAE;QACd,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;QAC9C,OAAO,EAAE,cAAc,CAAC;QACxB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,iBAAiB,EAAE,gCAAgC,CAAC;QACpD,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,cAAc,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,sBAAsB,CAAC;IAC3B,cAAc,IAAI,MAAM,CAAC;IACzB,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IACxD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC7D,SAAS,IAAI,OAAO,CAAC;IACrB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC3D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AACD,MAAM,WAAW,0BAA0B;IAC1C,WAAW,EAAE,oBAAoB,CAAC;IAClC,IAAI,CAAC,EAAE,OAAO,sBAAsB,CAAC;IACrC,MAAM,CAAC,EAAE,OAAO,wBAAwB,CAAC;IACzC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACnB;AAuCD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAMtF;
|
|
1
|
+
{"version":3,"file":"link-registry.d.ts","sourceRoot":"","sources":["../../src/account/link-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,wBAAwB,EACxB,sBAAsB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzE,KAAK,gCAAgC,GAAG,UAAU,CACjD,OAAO,sBAAsB,CAC7B,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;AAE1B,MAAM,MAAM,kBAAkB,GAC3B,yBAAyB,GACzB,uBAAuB,GACvB,oBAAoB,GACpB,gBAAgB,GAChB,iBAAiB,GACjB,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,mBAAmB,GACnB,cAAc,GACd,0BAA0B,GAC1B,uBAAuB,CAAC;AAC3B,MAAM,WAAW,sBAAsB;IACtC,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,UAAU,GAAG,kBAAkB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,iBAAiB,CAAC;IAClG,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACnC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AACD,MAAM,MAAM,sBAAsB,GAC/B;IAAE,SAAS,EAAE,sBAAsB,CAAA;CAAE,GACrC;IAAE,KAAK,EAAE,0BAA0B,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,KAAK,EAAE,uBAAuB,GAAG,yBAAyB,CAAA;CAAE,CAAC;AAClE,MAAM,WAAW,mBAAmB;IACnC,kBAAkB,CAAC,IAAI,0BAA0B,GAAG,IAAI,CAAC;IACzD,KAAK,CAAC,OAAO,EAAE;QACd,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;QAC9C,OAAO,EAAE,cAAc,CAAC;QACxB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,iBAAiB,EAAE,gCAAgC,CAAC;QACpD,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,cAAc,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,sBAAsB,CAAC;IAC3B,cAAc,IAAI,MAAM,CAAC;IACzB,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IACxD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC7D,SAAS,IAAI,OAAO,CAAC;IACrB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC3D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AACD,MAAM,WAAW,0BAA0B;IAC1C,SAAS,IAAI,OAAO,CAAC;IACrB,OAAO,IAAI,IAAI,CAAC;CAChB;AACD,MAAM,WAAW,0BAA0B;IAC1C,WAAW,EAAE,oBAAoB,CAAC;IAClC,IAAI,CAAC,EAAE,OAAO,sBAAsB,CAAC;IACrC,MAAM,CAAC,EAAE,OAAO,wBAAwB,CAAC;IACzC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACnB;AAuCD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAMtF;AA0VD,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,0BAA0B,GACjC,mBAAmB,CAErB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type AccountOwnerProfile, type AccountOwnerProfilePins } from "@codemem/core";
|
|
2
|
+
import type { AccountContext, AccountContextReader } from "./context.js";
|
|
3
|
+
import type { RecoveryProfile, RecoverySelection } from "./owner-recovery-types.js";
|
|
4
|
+
export interface RecoveryCapture {
|
|
5
|
+
context: AccountContext;
|
|
6
|
+
groups: string[];
|
|
7
|
+
publicKey: string;
|
|
8
|
+
semanticId: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function recoverySha(value: string): string;
|
|
11
|
+
export declare function captureRecoveryContext(readContext: AccountContextReader): RecoveryCapture;
|
|
12
|
+
export declare function recoveryProfile(capture: RecoveryCapture, coordinatorId: string): RecoveryProfile;
|
|
13
|
+
export declare function assertRecoverySelection(selection: RecoverySelection, expected: RecoveryProfile): void;
|
|
14
|
+
export declare function recoveryDestinations(capture: RecoveryCapture, coordinatorId: string): Map<string, {
|
|
15
|
+
profile: AccountOwnerProfile;
|
|
16
|
+
pins: AccountOwnerProfilePins;
|
|
17
|
+
}>;
|
|
18
|
+
export type RecoveryDestinations = ReturnType<typeof recoveryDestinations>;
|
|
19
|
+
export declare function assertNoCompetingOwner(destinations: RecoveryDestinations, ownerIdentityId: string): void;
|
|
20
|
+
//# sourceMappingURL=owner-recovery-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-recovery-context.d.ts","sourceRoot":"","sources":["../../src/account/owner-recovery-context.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAK5B,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEpF,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACnB;AACD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD;AAmBD,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,oBAAoB,GAAG,eAAe,CA4BzF;AACD,wBAAgB,eAAe,CAAC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,GAAG,eAAe,CAWhG;AACD,wBAAgB,uBAAuB,CACtC,SAAS,EAAE,iBAAiB,EAC5B,QAAQ,EAAE,eAAe,GACvB,IAAI,CAUN;AACD,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,MAAM,GACnB,GAAG,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,uBAAuB,CAAA;CAAE,CAAC,CAgB9E;AACD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAC3E,wBAAgB,sBAAsB,CACrC,YAAY,EAAE,oBAAoB,EAClC,eAAe,EAAE,MAAM,GACrB,IAAI,CAKN"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type ResolvedAccountOwnerReceiptReference } from "@codemem/core";
|
|
2
|
+
import type { RecoveryHistoryRow, RecoverySelection, ReviewedWeakLabel } from "./owner-recovery-types.js";
|
|
3
|
+
export declare const RECOVERY_SCOPE = "historical_included_owner_labels_only";
|
|
4
|
+
export declare class AccountOwnerRecoveryError extends Error {
|
|
5
|
+
readonly code: "invalid" | "busy" | "context_changed" | "unavailable";
|
|
6
|
+
constructor(code?: "invalid" | "busy" | "context_changed" | "unavailable");
|
|
7
|
+
}
|
|
8
|
+
export declare function requireRecovery(condition: unknown, code?: AccountOwnerRecoveryError["code"]): asserts condition;
|
|
9
|
+
export declare function recoveryId(value: unknown): value is string;
|
|
10
|
+
export declare function recoveryHash(value: unknown): value is string;
|
|
11
|
+
export declare function recoveryRecord(value: unknown): Record<string, unknown>;
|
|
12
|
+
export declare function exactRecoveryFields(row: Record<string, unknown>, fields: readonly string[]): void;
|
|
13
|
+
export declare function reviewReceipt(row: Record<string, unknown>): ResolvedAccountOwnerReceiptReference;
|
|
14
|
+
export interface ValidatedRecoveryReview {
|
|
15
|
+
state: "ready" | "restored" | "needs_review";
|
|
16
|
+
digest?: string;
|
|
17
|
+
receipt?: ResolvedAccountOwnerReceiptReference;
|
|
18
|
+
rows: RecoveryHistoryRow[];
|
|
19
|
+
labels: ReviewedWeakLabel[];
|
|
20
|
+
reasons: string[];
|
|
21
|
+
}
|
|
22
|
+
export declare function validateRecoveryReview(value: unknown, selection: RecoverySelection, groupId: string): ValidatedRecoveryReview;
|
|
23
|
+
export declare function parseRecoveryReply(text: string, selection: RecoverySelection): Map<string, ResolvedAccountOwnerReceiptReference>;
|
|
24
|
+
//# sourceMappingURL=owner-recovery-evidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-recovery-evidence.d.ts","sourceRoot":"","sources":["../../src/account/owner-recovery-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,oCAAoC,EACzC,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EACX,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,cAAc,0CAA0C,CAAC;AAKtE,qBAAa,yBAA0B,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,iBAAiB,GAAG,aAAa;IAAjF,YAAqB,IAAI,GAAE,SAAS,GAAG,MAAM,GAAG,iBAAiB,GAAG,aAAyB,EAE5F;CACD;AACD,wBAAgB,eAAe,CAC9B,SAAS,EAAE,OAAO,EAClB,IAAI,GAAE,yBAAyB,CAAC,MAAM,CAAa,GACjD,OAAO,CAAC,SAAS,CAEnB;AACD,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAQ1D;AACD,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAE5D;AACD,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGtE;AACD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAIjG;AAmFD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,oCAAoC,CAWhG;AACD,MAAM,WAAW,uBAAuB;IACvC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,cAAc,CAAC;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,oCAAoC,CAAC;IAC/C,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC3B,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB;AACD,wBAAgB,sBAAsB,CACrC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,MAAM,GACb,uBAAuB,CAiDzB;AA8BD,wBAAgB,kBAAkB,CACjC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,iBAAiB,GAC1B,GAAG,CAAC,MAAM,EAAE,oCAAoC,CAAC,CAmCnD"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { coordinatorAuthControllerReviewAction, readCoordinatorAccountLinkStatus, readCoordinatorResolvedAccountOwnerReceiptStatus, readCoordinatorResolvedAccountOwnerStatus } from "@codemem/core";
|
|
2
|
+
import type { AccountContextReader } from "./context.js";
|
|
3
|
+
import type { AccountLinkRegistry } from "./link-registry.js";
|
|
4
|
+
import type { RecoveryPreview, RecoveryPreviewRequest, RecoveryResult, RecoverySelection } from "./owner-recovery-types.js";
|
|
5
|
+
export type { RecoveryPreview, RecoveryPreviewRequest, RecoveryProfile, RecoveryResult, RecoverySelection, } from "./owner-recovery-types.js";
|
|
6
|
+
export interface AccountOwnerRecoveryServiceOptions {
|
|
7
|
+
readContext: AccountContextReader;
|
|
8
|
+
readAdminSecret: () => string | null | undefined;
|
|
9
|
+
registry: AccountLinkRegistry;
|
|
10
|
+
readRemoteStatus?: typeof readCoordinatorAccountLinkStatus;
|
|
11
|
+
readRemoteOwnerStatus?: typeof readCoordinatorResolvedAccountOwnerStatus;
|
|
12
|
+
readRemoteReceiptStatus?: typeof readCoordinatorResolvedAccountOwnerReceiptStatus;
|
|
13
|
+
reviewOwner?: typeof coordinatorAuthControllerReviewAction;
|
|
14
|
+
now?: () => number;
|
|
15
|
+
}
|
|
16
|
+
/** No routes or configuration composition: these callbacks are private server capabilities. */
|
|
17
|
+
declare class AccountOwnerRecoveryService {
|
|
18
|
+
#private;
|
|
19
|
+
constructor(options: AccountOwnerRecoveryServiceOptions);
|
|
20
|
+
getProfile(): Promise<{
|
|
21
|
+
version: 1;
|
|
22
|
+
profile: import("./owner-recovery-types.js").RecoveryProfile;
|
|
23
|
+
reviewAccess: "operator" | "request";
|
|
24
|
+
candidates: never[];
|
|
25
|
+
}>;
|
|
26
|
+
preview(request: RecoveryPreviewRequest): Promise<RecoveryPreview>;
|
|
27
|
+
confirm(input: {
|
|
28
|
+
preview: unknown;
|
|
29
|
+
approvalDigest: string;
|
|
30
|
+
}): Promise<RecoveryResult>;
|
|
31
|
+
importReply(input: {
|
|
32
|
+
selection: RecoverySelection;
|
|
33
|
+
replyText: string;
|
|
34
|
+
}): Promise<RecoveryResult>;
|
|
35
|
+
close(): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
export declare function createAccountOwnerRecoveryService(options: AccountOwnerRecoveryServiceOptions): AccountOwnerRecoveryService;
|
|
38
|
+
//# sourceMappingURL=owner-recovery-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-recovery-service.d.ts","sourceRoot":"","sources":["../../src/account/owner-recovery-service.ts"],"names":[],"mappings":"AACA,OAAO,EACN,qCAAqC,EAGrC,gCAAgC,EAChC,gDAAgD,EAChD,yCAAyC,EACzC,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAA8B,MAAM,oBAAoB,CAAC;AAkB1F,OAAO,KAAK,EACX,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACX,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,iBAAiB,GACjB,MAAM,2BAA2B,CAAC;AACnC,MAAM,WAAW,kCAAkC;IAClD,WAAW,EAAE,oBAAoB,CAAC;IAClC,eAAe,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjD,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,gCAAgC,CAAC;IAC3D,qBAAqB,CAAC,EAAE,OAAO,yCAAyC,CAAC;IACzE,uBAAuB,CAAC,EAAE,OAAO,gDAAgD,CAAC;IAClF,WAAW,CAAC,EAAE,OAAO,qCAAqC,CAAC;IAC3D,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACnB;AAiCD,+FAA+F;AAC/F,cAAM,2BAA2B;;IAMhC,YAAY,OAAO,EAAE,kCAAkC,EAEtD;IA2CK,UAAU;iBASL,CAAC;;;;OAKX;IAoFK,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAoBvE;IA8BK,OAAO,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAc1F;IAqJK,WAAW,CAAC,KAAK,EAAE;QACxB,SAAS,EAAE,iBAAiB,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,cAAc,CAAC,CAoB1B;IAiBK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAK3B;CACD;AACD,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,kCAAkC,+BAE5F"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/** Noncredential projections only; private paths and review evidence stay in the service. */
|
|
2
|
+
export interface RecoveryProfile {
|
|
3
|
+
contextId: string;
|
|
4
|
+
memoryActorId: string;
|
|
5
|
+
deviceId: string;
|
|
6
|
+
fingerprint: string;
|
|
7
|
+
coordinatorOrigin: string;
|
|
8
|
+
coordinatorId: string;
|
|
9
|
+
configuredGroups: readonly string[];
|
|
10
|
+
}
|
|
11
|
+
export interface RecoverySelection {
|
|
12
|
+
profile: RecoveryProfile;
|
|
13
|
+
existingOwnerId: string;
|
|
14
|
+
groups: readonly string[];
|
|
15
|
+
}
|
|
16
|
+
export interface RecoveryPreviewRequest extends RecoverySelection {
|
|
17
|
+
requestId: string;
|
|
18
|
+
purpose: "review" | "check_status";
|
|
19
|
+
}
|
|
20
|
+
export interface RecoveryHistoryRow {
|
|
21
|
+
id: string;
|
|
22
|
+
groupId: string;
|
|
23
|
+
deviceId: string;
|
|
24
|
+
fingerprint: string;
|
|
25
|
+
identityId: string;
|
|
26
|
+
assignment: "included" | "excluded";
|
|
27
|
+
relation: "exact_subject" | "alias" | "other";
|
|
28
|
+
reason: string;
|
|
29
|
+
}
|
|
30
|
+
export interface ReviewedWeakLabel {
|
|
31
|
+
label: string;
|
|
32
|
+
kind: "legacy_included_owner_label" | "consumed_project_actor_label";
|
|
33
|
+
group_id: string;
|
|
34
|
+
device_id: string;
|
|
35
|
+
evidence_ref: string;
|
|
36
|
+
effect: "account_owner_display_only";
|
|
37
|
+
}
|
|
38
|
+
export interface RecoveryPreview extends RecoverySelection {
|
|
39
|
+
requestId: string;
|
|
40
|
+
scope: "historical_included_owner_labels_only";
|
|
41
|
+
approvalDigest: string;
|
|
42
|
+
groupPreviews: readonly {
|
|
43
|
+
groupId: string;
|
|
44
|
+
action: "new" | "reuse" | "blocked";
|
|
45
|
+
reason: string;
|
|
46
|
+
}[];
|
|
47
|
+
history: {
|
|
48
|
+
complete: true;
|
|
49
|
+
rows: readonly RecoveryHistoryRow[];
|
|
50
|
+
} | {
|
|
51
|
+
complete: false;
|
|
52
|
+
rows: readonly RecoveryHistoryRow[];
|
|
53
|
+
operatorHelp: string;
|
|
54
|
+
};
|
|
55
|
+
reviewedWeakLabels: readonly ReviewedWeakLabel[];
|
|
56
|
+
}
|
|
57
|
+
export interface RecoveryResult {
|
|
58
|
+
preview: RecoveryPreview;
|
|
59
|
+
groups: readonly {
|
|
60
|
+
groupId: string;
|
|
61
|
+
status: "confirmed" | "failed" | "unknown";
|
|
62
|
+
message: string;
|
|
63
|
+
}[];
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=owner-recovery-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-recovery-types.d.ts","sourceRoot":"","sources":["../../src/account/owner-recovery-types.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AACD,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,eAAe,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AACD,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,QAAQ,GAAG,cAAc,CAAC;CACnC;AACD,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;IACpC,QAAQ,EAAE,eAAe,GAAG,OAAO,GAAG,OAAO,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,6BAA6B,GAAG,8BAA8B,CAAC;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,4BAA4B,CAAC;CACrC;AACD,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,uCAAuC,CAAC;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,SAAS;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAAC;QACpC,MAAM,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,OAAO,EACJ;QAAE,QAAQ,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,SAAS,kBAAkB,EAAE,CAAA;KAAE,GACvD;QACA,QAAQ,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,SAAS,kBAAkB,EAAE,CAAC;QACpC,YAAY,EAAE,MAAM,CAAC;KACpB,CAAC;IACL,kBAAkB,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACjD;AACD,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,SAAS;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;QAC3C,OAAO,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACJ"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type AccountOwnerAssociation, type CoordinatorResolvedAccountOwnerStatusRead } from "@codemem/core";
|
|
2
|
+
import type { AccountContext } from "./context.js";
|
|
3
|
+
import type { AccountLinkViewV1 } from "./status.js";
|
|
4
|
+
/** The coordinator ID comes from the first signed actor-status read, never the origin. */
|
|
5
|
+
export declare function readOwnerAssociation(context: AccountContext, coordinatorId: string): AccountOwnerAssociation | null;
|
|
6
|
+
export declare function ownerUnavailable(view: AccountLinkViewV1, code: "account_owner_association_invalid" | "context_changed"): AccountLinkViewV1;
|
|
7
|
+
export declare function associatedOwnerView(view: AccountLinkViewV1, context: AccountContext, association: AccountOwnerAssociation, remote: CoordinatorResolvedAccountOwnerStatusRead): AccountLinkViewV1;
|
|
8
|
+
//# sourceMappingURL=owner-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-status.d.ts","sourceRoot":"","sources":["../../src/account/owner-status.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,KAAK,uBAAuB,EAC5B,KAAK,yCAAyC,EAK9C,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,0FAA0F;AAC1F,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,cAAc,EACvB,aAAa,EAAE,MAAM,GACnB,uBAAuB,GAAG,IAAI,CA6BhC;AAED,wBAAgB,gBAAgB,CAC/B,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,mCAAmC,GAAG,iBAAiB,GAC3D,iBAAiB,CAOnB;AA8CD,wBAAgB,mBAAmB,CAClC,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,uBAAuB,EACpC,MAAM,EAAE,yCAAyC,GAC/C,iBAAiB,CAuDnB"}
|
package/dist/account/status.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { type CoordinatorAccountLinkStatusRead, readCoordinatorAccountChangeCapabilities, readCoordinatorAccountLinkStatus } from "@codemem/core";
|
|
1
|
+
import { type CoordinatorAccountLinkStatusRead, type ResolvedAccountOwnerStatus, readCoordinatorAccountChangeCapabilities, readCoordinatorAccountLinkStatus, readCoordinatorResolvedAccountOwnerStatus } from "@codemem/core";
|
|
2
2
|
import type { AccountContext, AccountContextReader, AccountContextResult, AccountSetup } from "./context.js";
|
|
3
3
|
import { type AccountLinkOperationV1, type AccountLinkRegistry } from "./link-registry.js";
|
|
4
4
|
export interface AccountStatusOptions {
|
|
5
5
|
registry?: AccountLinkRegistry;
|
|
6
6
|
readContext?: AccountContextReader;
|
|
7
7
|
readRemoteStatus?: typeof readCoordinatorAccountLinkStatus;
|
|
8
|
+
readRemoteOwnerStatus?: typeof readCoordinatorResolvedAccountOwnerStatus;
|
|
8
9
|
readRemoteCapabilities?: typeof readCoordinatorAccountChangeCapabilities;
|
|
9
10
|
}
|
|
10
11
|
type UnavailableCode = Extract<CoordinatorAccountLinkStatusRead, {
|
|
@@ -20,13 +21,25 @@ export interface AccountLinkViewV1 {
|
|
|
20
21
|
coordinator: {
|
|
21
22
|
origin: string;
|
|
22
23
|
} | null;
|
|
24
|
+
/** Display target only; local.identityId and all mutation contexts remain the memory actor. */
|
|
25
|
+
accountOwner?: {
|
|
26
|
+
identityId: string;
|
|
27
|
+
memoryActorId: string;
|
|
28
|
+
};
|
|
29
|
+
/** Read-only owner evidence, never ordinary account authority or management capabilities. */
|
|
30
|
+
ownerProjection?: {
|
|
31
|
+
kind: "resolved_account_owner";
|
|
32
|
+
status: Extract<ResolvedAccountOwnerStatus, {
|
|
33
|
+
state: "owner_confirmed";
|
|
34
|
+
}>;
|
|
35
|
+
};
|
|
23
36
|
remote: {
|
|
24
37
|
kind: "not_checked";
|
|
25
38
|
} | {
|
|
26
39
|
kind: "unsupported";
|
|
27
40
|
} | {
|
|
28
41
|
kind: "unavailable";
|
|
29
|
-
code: UnavailableCode | "context_changed";
|
|
42
|
+
code: UnavailableCode | "context_changed" | "account_owner_association_invalid";
|
|
30
43
|
} | {
|
|
31
44
|
kind: "status";
|
|
32
45
|
coordinatorId: string;
|
|
@@ -48,6 +61,8 @@ export interface AccountLinkViewV1 {
|
|
|
48
61
|
unlinkTarget?: string;
|
|
49
62
|
blockedReason: null | "setup_incomplete" | "status_unavailable" | "unsupported" | "review_required" | "already_linked" | "revoked" | "conflict" | "identity_mismatch" | "operation_active";
|
|
50
63
|
operation: AccountLinkOperationV1 | null;
|
|
64
|
+
/** Displayed operation's original context, never a mutation target. */
|
|
65
|
+
operationContextId?: string;
|
|
51
66
|
checkedAt: string;
|
|
52
67
|
}
|
|
53
68
|
type LocalResult = Exclude<AccountContextResult, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/account/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,gCAAgC,
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/account/status.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ import type { DeviceIdentityCoordinatorEvidence, GetUpdateStatusOptions, Observe
|
|
|
11
11
|
import { MemoryStore, type RawEventSweeper, VERSION } from "@codemem/core";
|
|
12
12
|
import { Hono } from "hono";
|
|
13
13
|
import { type AccountLinkOptions } from "./account/guard.js";
|
|
14
|
+
import type { createAccountOwnerRecoveryService } from "./account/owner-recovery-service.js";
|
|
14
15
|
import type { AccountStatusOptions } from "./account/status.js";
|
|
15
16
|
import type { RawEventInbox } from "./raw-event-inbox.js";
|
|
16
17
|
import { type InMemoryRequestRateLimiter } from "./request-rate-limit.js";
|
|
@@ -23,6 +24,8 @@ export { createAccountContextReader } from "./account/context.js";
|
|
|
23
24
|
export type { AccountLinkOptions } from "./account/guard.js";
|
|
24
25
|
export type { AccountLinkFailure, AccountLinkOperationV1, AccountLinkRegistry, AccountLinkRegistryOptions, AccountLinkStartResult, } from "./account/link-registry.js";
|
|
25
26
|
export { createAccountLinkRegistry } from "./account/link-registry.js";
|
|
27
|
+
export type { AccountOwnerRecoveryServiceOptions } from "./account/owner-recovery-service.js";
|
|
28
|
+
export { createAccountOwnerRecoveryService } from "./account/owner-recovery-service.js";
|
|
26
29
|
export type { AccountLinkViewV1, AccountStatusOptions } from "./account/status.js";
|
|
27
30
|
export type { AdvancePendingProjectSharesResult, AdvanceProjectShareOperationResult, ReconcileRecipientPolicyProjectsResult, } from "./application/coordinator-maintenance.js";
|
|
28
31
|
export { advancePendingProjectSharesOperation, reconcileRecipientPolicyProjectsOperation, } from "./application/coordinator-maintenance.js";
|
|
@@ -34,14 +37,18 @@ export type { LegacyTeamSetupActionBlockedReasonV1, LegacyTeamSetupActionGateV1,
|
|
|
34
37
|
export { VERSION };
|
|
35
38
|
/** Get (or create) the shared store instance. Exported so the sweeper can share it. */
|
|
36
39
|
export declare function getStore(): MemoryStore;
|
|
37
|
-
/** Close
|
|
40
|
+
/** Close a synchronous-only shared store. Async pack owners use closeStoreAsync(). */
|
|
38
41
|
export declare function closeStore(): void;
|
|
42
|
+
/** Drain semantic work before closing SQLite and releasing the shared store. */
|
|
43
|
+
export declare function closeStoreAsync(): Promise<void>;
|
|
39
44
|
/**
|
|
40
45
|
* Create the Hono app with all viewer routes.
|
|
41
46
|
* Exported for testing — pass a custom store factory to inject test DBs.
|
|
42
47
|
*/
|
|
43
48
|
export interface AppOptions {
|
|
44
|
-
accountLink?: AccountLinkOptions & AccountStatusOptions
|
|
49
|
+
accountLink?: AccountLinkOptions & AccountStatusOptions & {
|
|
50
|
+
ownerRecovery?: ReturnType<typeof createAccountOwnerRecoveryService>;
|
|
51
|
+
};
|
|
45
52
|
storeFactory?: () => MemoryStore;
|
|
46
53
|
rawEventInbox?: RawEventInbox | null;
|
|
47
54
|
rawEventTarget?: ViewerTargetStore;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACX,iCAAiC,EACjC,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,KAAK,eAAe,EAAiB,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1F,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,KAAK,kBAAkB,EAAsB,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAEN,KAAK,0BAA0B,EAC/B,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|