Files
2025-12-27 21:16:53 -08:00

1593 lines
28 KiB
TypeScript

export const ConfidentialERC20Abi = [
{
inputs: [
{
internalType: "contract IERC20",
name: "erc20_",
type: "address",
},
{
internalType: "string",
name: "symbolOverride_",
type: "string",
},
],
stateMutability: "nonpayable",
type: "constructor",
},
{
inputs: [],
name: "AlreadyClaimed",
type: "error",
},
{
inputs: [],
name: "ClaimNotFound",
type: "error",
},
{
inputs: [],
name: "ECDSAInvalidSignature",
type: "error",
},
{
inputs: [
{
internalType: "uint256",
name: "length",
type: "uint256",
},
],
name: "ECDSAInvalidSignatureLength",
type: "error",
},
{
inputs: [
{
internalType: "bytes32",
name: "s",
type: "bytes32",
},
],
name: "ECDSAInvalidSignatureS",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "spender",
type: "address",
},
{
internalType: "uint256",
name: "allowance",
type: "uint256",
},
{
internalType: "uint256",
name: "needed",
type: "uint256",
},
],
name: "ERC20InsufficientAllowance",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "sender",
type: "address",
},
{
internalType: "uint256",
name: "balance",
type: "uint256",
},
{
internalType: "uint256",
name: "needed",
type: "uint256",
},
],
name: "ERC20InsufficientBalance",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "approver",
type: "address",
},
],
name: "ERC20InvalidApprover",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "receiver",
type: "address",
},
],
name: "ERC20InvalidReceiver",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "sender",
type: "address",
},
],
name: "ERC20InvalidSender",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "spender",
type: "address",
},
],
name: "ERC20InvalidSpender",
type: "error",
},
{
inputs: [
{
internalType: "uint256",
name: "deadline",
type: "uint256",
},
],
name: "ERC2612ExpiredSignature",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "signer",
type: "address",
},
{
internalType: "address",
name: "owner",
type: "address",
},
],
name: "ERC2612InvalidSigner",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "from",
type: "address",
},
{
internalType: "address",
name: "permitOwner",
type: "address",
},
],
name: "FHERC20EncTransferFromOwnerMismatch",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "to",
type: "address",
},
{
internalType: "address",
name: "permitSpender",
type: "address",
},
],
name: "FHERC20EncTransferFromSpenderMismatch",
type: "error",
},
{
inputs: [
{
internalType: "uint256",
name: "inValueHash",
type: "uint256",
},
{
internalType: "uint256",
name: "permitValueHash",
type: "uint256",
},
],
name: "FHERC20EncTransferFromValueHashMismatch",
type: "error",
},
{
inputs: [],
name: "FHERC20IncompatibleFunction",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "token",
type: "address",
},
],
name: "FHERC20InvalidErc20",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "account",
type: "address",
},
{
internalType: "uint256",
name: "currentNonce",
type: "uint256",
},
],
name: "InvalidAccountNonce",
type: "error",
},
{
inputs: [
{
internalType: "uint8",
name: "got",
type: "uint8",
},
{
internalType: "uint8",
name: "expected",
type: "uint8",
},
],
name: "InvalidEncryptedInput",
type: "error",
},
{
inputs: [],
name: "InvalidRecipient",
type: "error",
},
{
inputs: [],
name: "InvalidShortString",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "owner",
type: "address",
},
],
name: "OwnableInvalidOwner",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "OwnableUnauthorizedAccount",
type: "error",
},
{
inputs: [
{
internalType: "uint8",
name: "bits",
type: "uint8",
},
{
internalType: "uint256",
name: "value",
type: "uint256",
},
],
name: "SafeCastOverflowedUintDowncast",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "token",
type: "address",
},
],
name: "SafeERC20FailedOperation",
type: "error",
},
{
inputs: [
{
internalType: "int32",
name: "value",
type: "int32",
},
],
name: "SecurityZoneOutOfBounds",
type: "error",
},
{
inputs: [
{
internalType: "string",
name: "str",
type: "string",
},
],
name: "StringTooLong",
type: "error",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "owner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "spender",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "value",
type: "uint256",
},
],
name: "Approval",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "to",
type: "address",
},
{
indexed: false,
internalType: "uint128",
name: "value",
type: "uint128",
},
],
name: "ClaimedDecryptedERC20",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "to",
type: "address",
},
{
indexed: false,
internalType: "uint128",
name: "value",
type: "uint128",
},
],
name: "DecryptedERC20",
type: "event",
},
{
anonymous: false,
inputs: [],
name: "EIP712DomainChanged",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "to",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "value_hash",
type: "uint256",
},
],
name: "EncTransfer",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "to",
type: "address",
},
{
indexed: false,
internalType: "uint128",
name: "value",
type: "uint128",
},
],
name: "EncryptedERC20",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousOwner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "OwnershipTransferred",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "symbol",
type: "string",
},
],
name: "SymbolUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "from",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "to",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "value",
type: "uint256",
},
],
name: "Transfer",
type: "event",
},
{
inputs: [],
name: "DOMAIN_SEPARATOR",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "address",
name: "",
type: "address",
},
],
name: "allowance",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "pure",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "approve",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "pure",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "balanceOf",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "balanceOfIsIndicator",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "ctHash",
type: "uint256",
},
],
name: "claimDecrypted",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "decimals",
outputs: [
{
internalType: "uint8",
name: "",
type: "uint8",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "to",
type: "address",
},
{
internalType: "uint128",
name: "value",
type: "uint128",
},
],
name: "decrypt",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "eip712Domain",
outputs: [
{
internalType: "bytes1",
name: "fields",
type: "bytes1",
},
{
internalType: "string",
name: "name",
type: "string",
},
{
internalType: "string",
name: "version",
type: "string",
},
{
internalType: "uint256",
name: "chainId",
type: "uint256",
},
{
internalType: "address",
name: "verifyingContract",
type: "address",
},
{
internalType: "bytes32",
name: "salt",
type: "bytes32",
},
{
internalType: "uint256[]",
name: "extensions",
type: "uint256[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "encBalanceOf",
outputs: [
{
internalType: "euint128",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "encTotalSupply",
outputs: [
{
internalType: "euint128",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "to",
type: "address",
},
{
components: [
{
internalType: "uint256",
name: "ctHash",
type: "uint256",
},
{
internalType: "uint8",
name: "securityZone",
type: "uint8",
},
{
internalType: "uint8",
name: "utype",
type: "uint8",
},
{
internalType: "bytes",
name: "signature",
type: "bytes",
},
],
internalType: "struct InEuint128",
name: "inValue",
type: "tuple",
},
],
name: "encTransfer",
outputs: [
{
internalType: "euint128",
name: "transferred",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "from",
type: "address",
},
{
internalType: "address",
name: "to",
type: "address",
},
{
components: [
{
internalType: "uint256",
name: "ctHash",
type: "uint256",
},
{
internalType: "uint8",
name: "securityZone",
type: "uint8",
},
{
internalType: "uint8",
name: "utype",
type: "uint8",
},
{
internalType: "bytes",
name: "signature",
type: "bytes",
},
],
internalType: "struct InEuint128",
name: "inValue",
type: "tuple",
},
{
components: [
{
internalType: "address",
name: "owner",
type: "address",
},
{
internalType: "address",
name: "spender",
type: "address",
},
{
internalType: "uint256",
name: "value_hash",
type: "uint256",
},
{
internalType: "uint256",
name: "deadline",
type: "uint256",
},
{
internalType: "uint8",
name: "v",
type: "uint8",
},
{
internalType: "bytes32",
name: "r",
type: "bytes32",
},
{
internalType: "bytes32",
name: "s",
type: "bytes32",
},
],
internalType: "struct IFHERC20.FHERC20_EIP712_Permit",
name: "permit",
type: "tuple",
},
],
name: "encTransferFrom",
outputs: [
{
internalType: "euint128",
name: "transferred",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "to",
type: "address",
},
{
internalType: "uint128",
name: "value",
type: "uint128",
},
],
name: "encrypt",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "erc20",
outputs: [
{
internalType: "contract IERC20",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "ctHash",
type: "uint256",
},
],
name: "getClaim",
outputs: [
{
components: [
{
internalType: "uint256",
name: "ctHash",
type: "uint256",
},
{
internalType: "uint128",
name: "requestedAmount",
type: "uint128",
},
{
internalType: "uint128",
name: "decryptedAmount",
type: "uint128",
},
{
internalType: "bool",
name: "decrypted",
type: "bool",
},
{
internalType: "address",
name: "to",
type: "address",
},
{
internalType: "bool",
name: "claimed",
type: "bool",
},
],
internalType: "struct ConfidentialClaim.Claim",
name: "",
type: "tuple",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "user",
type: "address",
},
],
name: "getUserClaims",
outputs: [
{
components: [
{
internalType: "uint256",
name: "ctHash",
type: "uint256",
},
{
internalType: "uint128",
name: "requestedAmount",
type: "uint128",
},
{
internalType: "uint128",
name: "decryptedAmount",
type: "uint128",
},
{
internalType: "bool",
name: "decrypted",
type: "bool",
},
{
internalType: "address",
name: "to",
type: "address",
},
{
internalType: "bool",
name: "claimed",
type: "bool",
},
],
internalType: "struct ConfidentialClaim.Claim[]",
name: "",
type: "tuple[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "indicatorTick",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "isFherc20",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "name",
outputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "owner",
type: "address",
},
],
name: "nonces",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "owner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "resetIndicatedBalance",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "symbol",
outputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "totalSupply",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "transfer",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "pure",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "transferFrom",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "pure",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "updatedSymbol",
type: "string",
},
],
name: "updateSymbol",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
];
export const RedactCoreAbi = [
{
inputs: [
{
internalType: "contract IWETH",
name: "wETH_",
type: "address",
},
{
internalType: "contract ConfidentialETH",
name: "eETH_",
type: "address",
},
],
stateMutability: "nonpayable",
type: "constructor",
},
{
inputs: [],
name: "Invalid_AlreadyDeployed",
type: "error",
},
{
inputs: [],
name: "Invalid_Stablecoin",
type: "error",
},
{
inputs: [],
name: "Invalid_WETH",
type: "error",
},
{
inputs: [],
name: "Invalid_eETH",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "owner",
type: "address",
},
],
name: "OwnableInvalidOwner",
type: "error",
},
{
inputs: [
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "OwnableUnauthorizedAccount",
type: "error",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "erc20",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "fherc20",
type: "address",
},
],
name: "Fherc20Deployed",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "fherc20",
type: "address",
},
{
indexed: false,
internalType: "string",
name: "symbol",
type: "string",
},
],
name: "Fherc20SymbolUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousOwner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "OwnershipTransferStarted",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousOwner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "OwnershipTransferred",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "erc20",
type: "address",
},
{
indexed: false,
internalType: "bool",
name: "isStablecoin",
type: "bool",
},
],
name: "StablecoinUpdated",
type: "event",
},
{
inputs: [
{
internalType: "address",
name: "erc20",
type: "address",
},
],
name: "_stablecoins",
outputs: [
{
internalType: "bool",
name: "isStablecoin",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "acceptOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "contract IERC20",
name: "erc20",
type: "address",
},
],
name: "deployFherc20",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "eETH",
outputs: [
{
internalType: "contract ConfidentialETH",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getDeployedFherc20s",
outputs: [
{
components: [
{
internalType: "address",
name: "erc20",
type: "address",
},
{
internalType: "address",
name: "fherc20",
type: "address",
},
],
internalType: "struct RedactedCore.MappedERC20[]",
name: "mappedFherc20s",
type: "tuple[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "erc20",
type: "address",
},
],
name: "getFherc20",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "erc20",
type: "address",
},
],
name: "getIsStablecoin",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "erc20",
type: "address",
},
],
name: "getIsWETH",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "owner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "pendingOwner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "contract ConfidentialERC20",
name: "fherc20",
type: "address",
},
{
internalType: "string",
name: "updatedSymbol",
type: "string",
},
],
name: "updateFherc20Symbol",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "stablecoin",
type: "address",
},
{
internalType: "bool",
name: "isStablecoin",
type: "bool",
},
],
name: "updateStablecoin",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "wETH",
outputs: [
{
internalType: "contract IWETH",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
] as const;