import { Analyzer, AnalyzerResult } from "../transaction-analyzer/analyzer.mjs"; import { AnalyzedObject } from "../transaction-analyzer/rules/objects.mjs"; import { BalanceFlowsAnalyzerOptions, CoinFlow } from "../transaction-analyzer/rules/balance-flows.mjs"; import { CoinValueAnalysis, CoinValueAnalyzerOptions } from "../transaction-analyzer/rules/coin-value.mjs"; import "../transaction-analyzer/index.mjs"; import * as _mysten_bcs69 from "@mysten/bcs"; import * as _mysten_sui_client63 from "@mysten/sui/client"; //#region src/auto-approvals/analyzer.d.ts interface AutoApprovalAnalyzerOptions { senderAddresses?: string[]; } declare const autoApprovalAnalyzer: Analyzer<{ operationType: string | null; senderAddresses: string[]; bytes: Uint8Array; balanceFlows: { byAddress: Record; sender: CoinFlow[]; sponsor: CoinFlow[] | null; }; senderBalanceFlows: CoinFlow[]; accessLevel: Record; ownedObjects: AnalyzedObject[]; digest: string; coinValues: CoinValueAnalysis; }, { client: _mysten_sui_client63.BaseClient & { core: _mysten_sui_client63.CoreClient; }; balanceFlows?: BalanceFlowsAnalyzerOptions | undefined; operationType?: string | undefined; getCoinPrices?: CoinValueAnalyzerOptions["getCoinPrices"] | undefined; autoApproval?: AutoApprovalAnalyzerOptions | undefined; }, { operationType: string | null; bytes: Uint8Array; data: { version: 2; sender?: string | null | undefined; expiration?: _mysten_bcs69.EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; ValidDuring: { minEpoch: string | number | null; maxEpoch: string | number | null; minTimestamp: string | number | null; maxTimestamp: string | number | null; chain: string; nonce: number; }; Validity: { allowedProposers: { epoch: string | number; proposers: number[]; } | null; minEpoch: string | number | null; maxEpoch: string | number | null; minTimestamp: string | number | null; maxTimestamp: string | number | null; chain: string; nonce: number; }; }, "Epoch" | "None" | "ValidDuring" | "Validity"> | null | undefined; gasData: { budget: string | number | null; price: string | number | null; owner: string | null; payment: { objectId: string; version: string | number; digest: string; }[] | null; }; inputs: _mysten_bcs69.EnumOutputShapeWithKeys<{ Object: _mysten_bcs69.EnumOutputShapeWithKeys<{ ImmOrOwnedObject: { objectId: string; version: string | number; digest: string; }; SharedObject: { objectId: string; initialSharedVersion: string | number; mutable: boolean; }; Receiving: { objectId: string; version: string | number; digest: string; }; }, "Receiving" | "ImmOrOwnedObject" | "SharedObject">; Pure: { bytes: string; }; UnresolvedPure: { value: unknown; }; UnresolvedObject: { objectId: string; version?: string | number | null | undefined; digest?: string | null | undefined; initialSharedVersion?: string | number | null | undefined; mutable?: boolean | null | undefined; }; FundsWithdrawal: { reservation: { MaxAmountU64: string | number; $kind: "MaxAmountU64"; }; typeArg: { Balance: string; $kind: "Balance"; }; withdrawFrom: _mysten_bcs69.EnumOutputShapeWithKeys<{ Sender: true; Sponsor: true; SenderAllowance: { funder: string; allowance: string; }; }, "Sender" | "Sponsor" | "SenderAllowance">; }; }, "Object" | "Pure" | "FundsWithdrawal" | "UnresolvedPure" | "UnresolvedObject">[]; commands: _mysten_bcs69.EnumOutputShapeWithKeys<{ MoveCall: { package: string; module: string; function: string; typeArguments: string[]; arguments: ({ GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; })[]; _argumentTypes?: { reference: "mutable" | "unknown" | "immutable" | null; body: _mysten_sui_client63.SuiClientTypes.OpenSignatureBody; }[] | null | undefined; }; TransferObjects: { objects: ({ GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; })[]; address: { GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; }; }; SplitCoins: { coin: { GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; }; amounts: ({ GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; })[]; }; MergeCoins: { destination: { GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; }; sources: ({ GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; })[]; }; Publish: { modules: string[]; dependencies: string[]; }; MakeMoveVec: { type: string | null; elements: ({ GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; })[]; }; Upgrade: { modules: string[]; dependencies: string[]; package: string; ticket: { GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; }; }; $Intent: { name: string; inputs: { [x: string]: { GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; } | ({ GasCoin: true; $kind: "GasCoin"; } | { Input: number; type?: "object" | "pure" | "withdrawal" | undefined; $kind: "Input"; } | { Result: number; $kind: "Result"; } | { NestedResult: [number, number]; $kind: "NestedResult"; })[]; }; data: { [x: string]: unknown; }; }; }, "MoveCall" | "TransferObjects" | "SplitCoins" | "MergeCoins" | "Publish" | "MakeMoveVec" | "Upgrade" | "$Intent">[]; }; balanceFlows: { byAddress: Record; sender: CoinFlow[]; sponsor: CoinFlow[] | null; }; accessLevel: Record; ownedObjects: AnalyzedObject[]; digest: string; }>; type AutoApprovalAnalysis = typeof autoApprovalAnalyzer extends Analyzer ? R : never; type AutoApprovalResult = AnalyzerResult; //#endregion export { AutoApprovalAnalysis, AutoApprovalAnalyzerOptions, AutoApprovalResult, autoApprovalAnalyzer }; //# sourceMappingURL=analyzer.d.mts.map