@aifinpay/agent 1.8.4 → 2.0.0-rc.12
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/PAYMENT_RECEIPTS.md +110 -0
- package/README.md +93 -35
- package/dist/agent.d.ts +6 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +50 -12
- package/dist/agent.js.map +1 -1
- package/dist/agentHistory.d.ts +15 -0
- package/dist/agentHistory.d.ts.map +1 -0
- package/dist/agentHistory.js +47 -0
- package/dist/agentHistory.js.map +1 -0
- package/dist/agentPassport.d.ts +95 -0
- package/dist/agentPassport.d.ts.map +1 -0
- package/dist/agentPassport.js +177 -0
- package/dist/agentPassport.js.map +1 -0
- package/dist/aifp1.d.ts +135 -8
- package/dist/aifp1.d.ts.map +1 -1
- package/dist/aifp1.js +317 -50
- package/dist/aifp1.js.map +1 -1
- package/dist/apiUrl.d.ts +3 -0
- package/dist/apiUrl.d.ts.map +1 -0
- package/dist/apiUrl.js +8 -0
- package/dist/apiUrl.js.map +1 -0
- package/dist/chains.d.ts +4 -0
- package/dist/chains.d.ts.map +1 -0
- package/dist/chains.js +24 -0
- package/dist/chains.js.map +1 -0
- package/dist/deploymentResolver.d.ts +87 -0
- package/dist/deploymentResolver.d.ts.map +1 -0
- package/dist/deploymentResolver.js +145 -0
- package/dist/deploymentResolver.js.map +1 -0
- package/dist/facilitators/aifinpay.d.ts +4 -5
- package/dist/facilitators/aifinpay.d.ts.map +1 -1
- package/dist/facilitators/aifinpay.js +49 -19
- package/dist/facilitators/aifinpay.js.map +1 -1
- package/dist/facilitators/base.d.ts +12 -1
- package/dist/facilitators/base.d.ts.map +1 -1
- package/dist/facilitators/detect.d.ts +3 -3
- package/dist/facilitators/detect.d.ts.map +1 -1
- package/dist/facilitators/detect.js +3 -22
- package/dist/facilitators/detect.js.map +1 -1
- package/dist/facilitators/standard-x402.d.ts +4 -8
- package/dist/facilitators/standard-x402.d.ts.map +1 -1
- package/dist/facilitators/standard-x402.js +218 -92
- package/dist/facilitators/standard-x402.js.map +1 -1
- package/dist/index.d.ts +24 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -34
- package/dist/index.js.map +1 -1
- package/dist/localIdentity.d.ts +17 -0
- package/dist/localIdentity.d.ts.map +1 -0
- package/dist/localIdentity.js +81 -0
- package/dist/localIdentity.js.map +1 -0
- package/dist/settlement.d.ts +198 -0
- package/dist/settlement.d.ts.map +1 -0
- package/dist/settlement.js +429 -0
- package/dist/settlement.js.map +1 -0
- package/dist/settlementHttp.d.ts +10 -0
- package/dist/settlementHttp.d.ts.map +1 -0
- package/dist/settlementHttp.js +70 -0
- package/dist/settlementHttp.js.map +1 -0
- package/dist/settlementV14.d.ts +136 -0
- package/dist/settlementV14.d.ts.map +1 -0
- package/dist/settlementV14.js +170 -0
- package/dist/settlementV14.js.map +1 -0
- package/dist/solanaDeploymentResolver.d.ts +90 -0
- package/dist/solanaDeploymentResolver.d.ts.map +1 -0
- package/dist/solanaDeploymentResolver.js +143 -0
- package/dist/solanaDeploymentResolver.js.map +1 -0
- package/dist/solanaV14Deployments.generated.d.ts +35 -0
- package/dist/solanaV14Deployments.generated.d.ts.map +1 -0
- package/dist/solanaV14Deployments.generated.js +61 -0
- package/dist/solanaV14Deployments.generated.js.map +1 -0
- package/dist/splitterRoutes.d.ts +120 -0
- package/dist/splitterRoutes.d.ts.map +1 -0
- package/dist/splitterRoutes.generated.d.ts +22 -0
- package/dist/splitterRoutes.generated.d.ts.map +1 -0
- package/dist/splitterRoutes.generated.js +459 -0
- package/dist/splitterRoutes.generated.js.map +1 -0
- package/dist/splitterRoutes.js +73 -0
- package/dist/splitterRoutes.js.map +1 -0
- package/dist/unifiedAgent.d.ts +28 -18
- package/dist/unifiedAgent.d.ts.map +1 -1
- package/dist/unifiedAgent.js +85 -325
- package/dist/unifiedAgent.js.map +1 -1
- package/dist/v14Deployments.generated.d.ts +53 -0
- package/dist/v14Deployments.generated.d.ts.map +1 -0
- package/dist/v14Deployments.generated.js +89 -0
- package/dist/v14Deployments.generated.js.map +1 -0
- package/dist/wallet.d.ts +11 -52
- package/dist/wallet.d.ts.map +1 -1
- package/dist/wallet.js +27 -51
- package/dist/wallet.js.map +1 -1
- package/package.json +7 -4
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -127
- package/dist/cli.js.map +0 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// DO NOT EDIT BY HAND. Bundled copy of the Solana splitter v1.4 deployment
|
|
2
|
+
// artifacts from AiFinPay/solana-contract, so a shipped build resolves the
|
|
3
|
+
// Solana program id without a runtime GitHub fetch — the same discipline as
|
|
4
|
+
// v14Deployments.generated.ts (EVM) and splitterRoutes.generated.ts.
|
|
5
|
+
//
|
|
6
|
+
// Source: AiFinPay/solana-contract @ dev (commit
|
|
7
|
+
// 8a13d10d6210cd37345f7ae6684068bf849e24b1), files:
|
|
8
|
+
// deployments/splitter_v14/splitter.mainnet.20260910-170049.json (mainnet IDL)
|
|
9
|
+
// deployments/splitter_v14/splitter-mainnet-deploy-20260910-170049.log
|
|
10
|
+
// deployments/splitter_v14/splitter.devnet.20260910-143306.json (devnet IDL)
|
|
11
|
+
// deployments/splitter_v14/splitter-deploy-20260910-143306.log
|
|
12
|
+
//
|
|
13
|
+
// To refresh: read the same files off solana-contract's dev branch, e.g.
|
|
14
|
+
// git show origin/dev:deployments/splitter_v14/splitter.mainnet.<ts>.json
|
|
15
|
+
// and update the program ids below. Development deployments are, by design,
|
|
16
|
+
// devnet; production is mainnet-beta. The program id in each entry is the
|
|
17
|
+
// canonical program id confirmed in the deploy log for that cluster.
|
|
18
|
+
//
|
|
19
|
+
// NOTE ON FALLBACK: unlike EVM (which falls back v1.4 -> v1.2), Solana has NO
|
|
20
|
+
// v1.2-equivalent splitter to fall back to. The previous Solana program
|
|
21
|
+
// (5g9zWHF1Vv6GiGpA2ZbJQbSCDZd5hAk9AyvabRJvKFx2) was closed and removed from
|
|
22
|
+
// mainnet, and the SDK never bundled it — it takes the program id at runtime
|
|
23
|
+
// from the bridge's pay_solana challenge. So the Solana resolver offers v1.4
|
|
24
|
+
// only; "auto" resolves v1.4 and raises a typed no-deployment error where v1.4
|
|
25
|
+
// is absent rather than inventing a downgrade.
|
|
26
|
+
/** Where this table came from, so a build can be traced to a commit. */
|
|
27
|
+
export const SOLANA_V14_DEPLOYMENTS_SOURCE = {
|
|
28
|
+
repo: "AiFinPay/solana-contract",
|
|
29
|
+
branch: "dev",
|
|
30
|
+
commit: "8a13d10d6210cd37345f7ae6684068bf849e24b1",
|
|
31
|
+
path: "deployments/splitter_v14/",
|
|
32
|
+
};
|
|
33
|
+
/** Solana v1.4 deployments, keyed by cluster. Devnet is dev-only; mainnet is
|
|
34
|
+
* prod-only. Absence of a cluster here means no v1.4 deployment for it. */
|
|
35
|
+
export const SOLANA_V14_DEPLOYMENTS = {
|
|
36
|
+
devnet: {
|
|
37
|
+
network: "devnet",
|
|
38
|
+
environment: "dev",
|
|
39
|
+
splitterVersion: "1.4",
|
|
40
|
+
programId: "Dg9v95m6ofTwaU9V69PNAyRaKeELwxrne4THUYuUTeon",
|
|
41
|
+
idl: {
|
|
42
|
+
name: "splitter",
|
|
43
|
+
version: "1.4.1",
|
|
44
|
+
artifact: "deployments/splitter_v14/splitter.devnet.20260910-143306.json",
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
mainnet: {
|
|
48
|
+
network: "mainnet",
|
|
49
|
+
environment: "prod",
|
|
50
|
+
splitterVersion: "1.4",
|
|
51
|
+
programId: "8dty5bD738Z9TzEkDu8vLSnhpJNWtEGMUEcYaKCUTY6y",
|
|
52
|
+
idl: {
|
|
53
|
+
name: "splitter",
|
|
54
|
+
version: "1.4.1",
|
|
55
|
+
artifact: "deployments/splitter_v14/splitter.mainnet.20260910-170049.json",
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
/** The single development cluster Solana v1.4 supports today. */
|
|
60
|
+
export const SOLANA_DEV_NETWORKS = ["devnet"];
|
|
61
|
+
//# sourceMappingURL=solanaV14Deployments.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solanaV14Deployments.generated.js","sourceRoot":"","sources":["../src/solanaV14Deployments.generated.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,2EAA2E;AAC3E,4EAA4E;AAC5E,qEAAqE;AACrE,EAAE;AACF,iDAAiD;AACjD,oDAAoD;AACpD,kFAAkF;AAClF,yEAAyE;AACzE,iFAAiF;AACjF,iEAAiE;AACjE,EAAE;AACF,yEAAyE;AACzE,4EAA4E;AAC5E,4EAA4E;AAC5E,0EAA0E;AAC1E,qEAAqE;AACrE,EAAE;AACF,8EAA8E;AAC9E,wEAAwE;AACxE,6EAA6E;AAC7E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,+CAA+C;AA2B/C,wEAAwE;AACxE,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,IAAI,EAAE,0BAA0B;IAChC,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,0CAA0C;IAClD,IAAI,EAAE,2BAA2B;CACzB,CAAC;AAEX;4EAC4E;AAC5E,MAAM,CAAC,MAAM,sBAAsB,GAAwC;IACzE,MAAM,EAAE;QACN,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,KAAK;QACtB,SAAS,EAAE,8CAA8C;QACzD,GAAG,EAAE;YACH,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,OAAO;YAChB,QAAQ,EACN,+DAA+D;SAClE;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,MAAM;QACnB,eAAe,EAAE,KAAK;QACtB,SAAS,EAAE,8CAA8C;QACzD,GAAG,EAAE;YACH,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,OAAO;YAChB,QAAQ,EACN,gEAAgE;SACnE;KACF;CACF,CAAC;AAEF,iEAAiE;AACjE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,CAAU,CAAC"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v1.3 splitter selection, keyed by chain AND protocol route.
|
|
3
|
+
*
|
|
4
|
+
* From v1.3 a chain carries one splitter per protocol route, because the fee
|
|
5
|
+
* split is immutable at construction and the two protocols need different
|
|
6
|
+
* economics:
|
|
7
|
+
*
|
|
8
|
+
* merchant-aifp1 (100/0) — the agent pays the quoted gross amount, the
|
|
9
|
+
* AiFinPay treasury receives 1%, the merchant receives 99%.
|
|
10
|
+
* agent-x402 (0/0) — the provider receives 100% of the provider-defined
|
|
11
|
+
* price and the AiFinPay fee is 0% for now. This route is NOT fee-on-top;
|
|
12
|
+
* fee-on-top semantics arrive in a future contract version.
|
|
13
|
+
*
|
|
14
|
+
* Selection must use both chain and route, and must never fall back from one
|
|
15
|
+
* route to the other. That is not a style preference. The splitters were
|
|
16
|
+
* deployed with CREATE, so an address derives from deployer and nonce and the
|
|
17
|
+
* same address recurs on other chains for the other route:
|
|
18
|
+
*
|
|
19
|
+
* 0x1Fe2021336596655Fac72bC7bC40F7FFFA501d55
|
|
20
|
+
* is OP's merchant-aifp1 AND Base's agent-x402
|
|
21
|
+
* 0xF03B3387415D557b6ab709D06E8aF0b4ABD6Eb74
|
|
22
|
+
* is Unichain's merchant-aifp1, Avalanche's agent-x402, AND the legacy
|
|
23
|
+
* v1.2 splitter on Optimism
|
|
24
|
+
*
|
|
25
|
+
* An address on its own therefore says nothing about which economics apply.
|
|
26
|
+
* Resolving by chain alone would settle at the wrong fee split, silently,
|
|
27
|
+
* and the amounts would still look plausible in every log.
|
|
28
|
+
*
|
|
29
|
+
* The table itself is NOT in this file. It is generated into
|
|
30
|
+
* splitterRoutes.generated.ts from registry/splitter-table.json, a byte-for-byte
|
|
31
|
+
* copy of the canonical artifact in AiFinPay/evm-contract, where every
|
|
32
|
+
* payment-critical field — splitter, owner, treasury, both bps values, the
|
|
33
|
+
* runtime code hash — was read from the chain by verify-registry.mjs. Two
|
|
34
|
+
* repositories hand-maintaining the same payout addresses is the failure this
|
|
35
|
+
* split prevents; `npm run registry:check` fails CI if they disagree.
|
|
36
|
+
*
|
|
37
|
+
* What stays here is the part worth reading: the types, the errors, and the two
|
|
38
|
+
* resolvers. Logic belongs in a reviewed file, not in a generated one.
|
|
39
|
+
*/
|
|
40
|
+
import type { Chain } from "viem/chains";
|
|
41
|
+
export { SPLITTER_ROUTES, SPLITTER_GOVERNANCE, SPLITTER_REGISTRY_SOURCE, } from "./splitterRoutes.generated.js";
|
|
42
|
+
/** Protocol routes. A route is a fee profile fixed at construction. */
|
|
43
|
+
export type SplitterRoute = "merchant-aifp1" | "agent-x402";
|
|
44
|
+
/** Chains carrying v1.3 route splitters. */
|
|
45
|
+
export type SplitterRouteChain = "amoy" | "polygon" | "optimism" | "bnb" | "unichain" | "botchain" | "base" | "arbitrum" | "avalanche" | "xrplevm";
|
|
46
|
+
/** Key into SPLITTER_ROUTES. Both halves are required. */
|
|
47
|
+
export type SplitterRouteKey = `${SplitterRouteChain}:${SplitterRoute}`;
|
|
48
|
+
export interface SplitterRouteDeployment {
|
|
49
|
+
chain: SplitterRouteChain;
|
|
50
|
+
route: SplitterRoute;
|
|
51
|
+
chainId: number;
|
|
52
|
+
viemChain: Chain;
|
|
53
|
+
splitter: `0x${string}`;
|
|
54
|
+
/**
|
|
55
|
+
* The governance Safe, read from the contract's own owner(). It controls
|
|
56
|
+
* pause/unpause, the treasury address and the stablecoin whitelist, so it is
|
|
57
|
+
* carried here rather than assumed: every other field is only as trustworthy
|
|
58
|
+
* as whoever can change it.
|
|
59
|
+
*/
|
|
60
|
+
owner: `0x${string}`;
|
|
61
|
+
/** Owner and treasury are the same governance Safe on every chain. */
|
|
62
|
+
treasury: `0x${string}`;
|
|
63
|
+
/** Immutable, baked into runtime code. 100 = 1%. */
|
|
64
|
+
treasuryBps: number;
|
|
65
|
+
ipCreatorBps: number;
|
|
66
|
+
/** keccak-256 of the deployed runtime bytecode, read from chain. */
|
|
67
|
+
runtimeCodeHash: `0x${string}`;
|
|
68
|
+
/**
|
|
69
|
+
* Deployed and verified is not the same as payable. A route is enabled
|
|
70
|
+
* individually, and only after a successful mainnet paid end-to-end
|
|
71
|
+
* settlement on that exact route with verified balance deltas.
|
|
72
|
+
*/
|
|
73
|
+
settlementEnabled: boolean;
|
|
74
|
+
/** Testnet entries require an explicit opt-in; they never activate mainnet. */
|
|
75
|
+
testnet: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* How many independent RPC providers agreed on every field above when the
|
|
78
|
+
* registry was verified. A route verified from one provider can never be
|
|
79
|
+
* enabled — BOT Chain and XRPL EVM have exactly one public provider each.
|
|
80
|
+
*/
|
|
81
|
+
rpcQuorum: number;
|
|
82
|
+
/**
|
|
83
|
+
* Stablecoins the splitter accepts, read live via whitelistedTokens() and
|
|
84
|
+
* owner-mutable, so pinned separately from the runtime hash. null = not
|
|
85
|
+
* accepted on this chain; a chain with both null settles native only.
|
|
86
|
+
*/
|
|
87
|
+
stablecoins: {
|
|
88
|
+
USDC: `0x${string}` | null;
|
|
89
|
+
USDT: `0x${string}` | null;
|
|
90
|
+
};
|
|
91
|
+
/** Policy review window. Outside it, a route must not settle. */
|
|
92
|
+
validFrom: string;
|
|
93
|
+
validUntil: string;
|
|
94
|
+
defaultRpc: string;
|
|
95
|
+
explorer: string;
|
|
96
|
+
/** The date the fields above were last read from the chain. */
|
|
97
|
+
verifiedAt: string;
|
|
98
|
+
}
|
|
99
|
+
export declare class UnknownSplitterRouteError extends Error {
|
|
100
|
+
constructor(chain: string, route: string);
|
|
101
|
+
}
|
|
102
|
+
export declare class SplitterRouteNotSettlingError extends Error {
|
|
103
|
+
constructor(key: string, reason: string);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Resolve a splitter by chain AND route. Throws on an unknown pair rather
|
|
107
|
+
* than falling back, because the fallback is the bug: every route resolves to
|
|
108
|
+
* a real, deployed, working contract with the wrong economics.
|
|
109
|
+
*/
|
|
110
|
+
export declare function resolveSplitterRoute(chain: SplitterRouteChain | string, route: SplitterRoute | string): SplitterRouteDeployment;
|
|
111
|
+
/**
|
|
112
|
+
* Resolve a route that is cleared to move money. Separate from
|
|
113
|
+
* resolveSplitterRoute on purpose: reading the registry and being allowed to
|
|
114
|
+
* settle are different questions, and conflating them is how a disabled route
|
|
115
|
+
* ends up paying.
|
|
116
|
+
*/
|
|
117
|
+
export declare function resolveSettlingSplitterRoute(chain: SplitterRouteChain | string, route: SplitterRoute | string, now?: Date, options?: {
|
|
118
|
+
allowTestnet?: boolean;
|
|
119
|
+
}): SplitterRouteDeployment;
|
|
120
|
+
//# sourceMappingURL=splitterRoutes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splitterRoutes.d.ts","sourceRoot":"","sources":["../src/splitterRoutes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,+BAA+B,CAAC;AAEvC,uEAAuE;AACvE,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,YAAY,CAAC;AAE5D,4CAA4C;AAC5C,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,SAAS,GACT,UAAU,GACV,KAAK,GACL,UAAU,GACV,UAAU,GACV,MAAM,GACN,UAAU,GACV,WAAW,GACX,SAAS,CAAC;AAEd,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GAAG,GAAG,kBAAkB,IAAI,aAAa,EAAE,CAAC;AAExE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,KAAK,CAAC;IACjB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB;;;;;OAKG;IACH,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;IACrB,sEAAsE;IACtE,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;IACxB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B;;;;OAIG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B,+EAA+E;IAC/E,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,WAAW,EAAE;QAAE,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,IAAI,CAAA;KAAE,CAAC;IACxE,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAUzC;AAED,qBAAa,6BAA8B,SAAQ,KAAK;gBAC1C,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIxC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,kBAAkB,GAAG,MAAM,EAClC,KAAK,EAAE,aAAa,GAAG,MAAM,GAC5B,uBAAuB,CAMzB;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,kBAAkB,GAAG,MAAM,EAClC,KAAK,EAAE,aAAa,GAAG,MAAM,EAC7B,GAAG,GAAE,IAAiB,EACtB,OAAO,GAAE;IAAE,YAAY,CAAC,EAAE,OAAO,CAAA;CAAO,GACvC,uBAAuB,CAoDzB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { SplitterRouteDeployment, SplitterRouteKey } from "./splitterRoutes.js";
|
|
2
|
+
/** Where this table came from, so a deployed build can be traced to a commit. */
|
|
3
|
+
export declare const SPLITTER_REGISTRY_SOURCE: {
|
|
4
|
+
readonly repo: "AiFinPay/evm-contract";
|
|
5
|
+
readonly path: "registry/generated/splitter-table.json";
|
|
6
|
+
readonly commit: "64e245fd613e97f95195239238d6ac75484a8a21";
|
|
7
|
+
readonly artifactSha256: "36ee672b1deccd7b851460b459af26984ca07802477bc8c1e78018f5d5154827";
|
|
8
|
+
readonly schemaVersion: 4;
|
|
9
|
+
readonly registryUpdatedAt: "2026-08-30";
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* The governance Safe that owns every splitter below, and the exact signer
|
|
13
|
+
* shape it was verified under. Read from the chain by verify-registry.mjs, which
|
|
14
|
+
* compares the signer set and threshold exactly rather than as a floor.
|
|
15
|
+
*/
|
|
16
|
+
export declare const SPLITTER_GOVERNANCE: {
|
|
17
|
+
readonly safe: "0xFd936f75D9221949f2FEaB54Cd342F7527154eD5";
|
|
18
|
+
readonly threshold: 3;
|
|
19
|
+
readonly owners: readonly ["0x2118c57dEBD53f614DDfE464Ff2941BE6646cA82", "0x3C31dd9daCeC5473cC9B660CD69247A20701cF19", "0x25A834b6fEC79e9ee6ED04Ef5b97440149C6Cc24", "0x1D5eF769A024B3157c76884fbd10302d8d83fAB9", "0x849930eB20ED0a697c71BcE565f18702D202C0F8"];
|
|
20
|
+
};
|
|
21
|
+
export declare const SPLITTER_ROUTES: Record<SplitterRouteKey, SplitterRouteDeployment>;
|
|
22
|
+
//# sourceMappingURL=splitterRoutes.generated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splitterRoutes.generated.d.ts","sourceRoot":"","sources":["../src/splitterRoutes.generated.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAErF,iFAAiF;AACjF,eAAO,MAAM,wBAAwB;;;;;;;CAO3B,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;CAUtB,CAAC;AAEX,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,CAqa7E,CAAC"}
|