Skip to content

Instantly share code, notes, and snippets.

@blakewest
Created May 20, 2024 21:03
Show Gist options
  • Select an option

  • Save blakewest/9c5d0a4ba00accb55e65503775a3b5d6 to your computer and use it in GitHub Desktop.

Select an option

Save blakewest/9c5d0a4ba00accb55e65503775a3b5d6 to your computer and use it in GitHub Desktop.

Revisions

  1. blakewest created this gist May 20, 2024.
    741 changes: 741 additions & 0 deletions GoldfinchFactoryABI.json
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,741 @@
    [
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "contract UpgradeableBeacon",
    "name": "beacon",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "owner",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "implementation",
    "type": "address"
    }
    ],
    "name": "BeaconCreated",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "contract ICallableLoan",
    "name": "loan",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "borrower",
    "type": "address"
    }
    ],
    "name": "CallableLoanCreated",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "contract ICreditLine",
    "name": "creditLine",
    "type": "address"
    }
    ],
    "name": "CreditLineCreated",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": false,
    "internalType": "uint8",
    "name": "version",
    "type": "uint8"
    }
    ],
    "name": "Initialized",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "contract ITranchedPool",
    "name": "pool",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "borrower",
    "type": "address"
    }
    ],
    "name": "PoolCreated",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "indexed": true,
    "internalType": "bytes32",
    "name": "previousAdminRole",
    "type": "bytes32"
    },
    {
    "indexed": true,
    "internalType": "bytes32",
    "name": "newAdminRole",
    "type": "bytes32"
    }
    ],
    "name": "RoleAdminChanged",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "account",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "sender",
    "type": "address"
    }
    ],
    "name": "RoleGranted",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "account",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "sender",
    "type": "address"
    }
    ],
    "name": "RoleRevoked",
    "type": "event"
    },
    {
    "anonymous": false,
    "inputs": [
    {
    "indexed": true,
    "internalType": "contract ISimpleLoan",
    "name": "loan",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "lender",
    "type": "address"
    },
    {
    "indexed": false,
    "internalType": "uint256",
    "name": "totalPrincipalDeposited",
    "type": "uint256"
    }
    ],
    "name": "SimpleLoanCreated",
    "type": "event"
    },
    {
    "inputs": [],
    "name": "BORROWER_ROLE",
    "outputs": [
    {
    "internalType": "bytes32",
    "name": "",
    "type": "bytes32"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [],
    "name": "DEFAULT_ADMIN_ROLE",
    "outputs": [
    {
    "internalType": "bytes32",
    "name": "",
    "type": "bytes32"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "owner",
    "type": "address"
    },
    {
    "internalType": "contract IPauser",
    "name": "pauser",
    "type": "address"
    }
    ],
    "name": "__BaseUpgradeablePausable__init",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [],
    "name": "config",
    "outputs": [
    {
    "internalType": "contract IGoldfinchConfig",
    "name": "",
    "type": "address"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "_borrower",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "_limit",
    "type": "uint256"
    },
    {
    "internalType": "uint256",
    "name": "_interestApr",
    "type": "uint256"
    },
    {
    "internalType": "uint256",
    "name": "_numLockupPeriods",
    "type": "uint256"
    },
    {
    "internalType": "contract ISchedule",
    "name": "_schedule",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "_lateFeeApr",
    "type": "uint256"
    },
    {
    "internalType": "uint256",
    "name": "_fundableAt",
    "type": "uint256"
    },
    {
    "internalType": "uint256[]",
    "name": "_allowedUIDTypes",
    "type": "uint256[]"
    }
    ],
    "name": "createCallableLoan",
    "outputs": [
    {
    "internalType": "contract ICallableLoan",
    "name": "loan",
    "type": "address"
    }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [],
    "name": "createCreditLine",
    "outputs": [
    {
    "internalType": "contract ICreditLine",
    "name": "",
    "type": "address"
    }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "_borrower",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "_juniorFeePercent",
    "type": "uint256"
    },
    {
    "internalType": "uint256",
    "name": "_limit",
    "type": "uint256"
    },
    {
    "internalType": "uint256",
    "name": "_interestApr",
    "type": "uint256"
    },
    {
    "internalType": "contract ISchedule",
    "name": "_schedule",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "_lateFeeApr",
    "type": "uint256"
    },
    {
    "internalType": "uint256",
    "name": "_fundableAt",
    "type": "uint256"
    },
    {
    "internalType": "uint256[]",
    "name": "_allowedUIDTypes",
    "type": "uint256[]"
    },
    {
    "components": [
    {
    "internalType": "address",
    "name": "originator",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "feeInBps",
    "type": "uint256"
    }
    ],
    "internalType": "struct OriginationFeeParams",
    "name": "_originationFees",
    "type": "tuple"
    }
    ],
    "name": "createPool",
    "outputs": [
    {
    "internalType": "contract ITranchedPool",
    "name": "pool",
    "type": "address"
    }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "_contractOwner",
    "type": "address"
    },
    {
    "internalType": "uint256[]",
    "name": "_allowedUIDTypes",
    "type": "uint256[]"
    },
    {
    "internalType": "address",
    "name": "_lender",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "_totalPrincipalDeposited",
    "type": "uint256"
    }
    ],
    "name": "createSimpleLoan",
    "outputs": [
    {
    "internalType": "contract ISimpleLoan",
    "name": "",
    "type": "address"
    },
    {
    "internalType": "uint256",
    "name": "",
    "type": "uint256"
    }
    ],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    }
    ],
    "name": "getRoleAdmin",
    "outputs": [
    {
    "internalType": "bytes32",
    "name": "",
    "type": "bytes32"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "internalType": "address",
    "name": "account",
    "type": "address"
    }
    ],
    "name": "grantRole",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "internalType": "address",
    "name": "account",
    "type": "address"
    }
    ],
    "name": "hasRole",
    "outputs": [
    {
    "internalType": "bool",
    "name": "",
    "type": "bool"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "owner",
    "type": "address"
    },
    {
    "internalType": "contract IGoldfinchConfig",
    "name": "_config",
    "type": "address"
    }
    ],
    "name": "initialize",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [],
    "name": "isAdmin",
    "outputs": [
    {
    "internalType": "bool",
    "name": "",
    "type": "bool"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [],
    "name": "isBorrower",
    "outputs": [
    {
    "internalType": "bool",
    "name": "",
    "type": "bool"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "_loanAddress",
    "type": "address"
    }
    ],
    "name": "isValidLoan",
    "outputs": [
    {
    "internalType": "bool",
    "name": "",
    "type": "bool"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [],
    "name": "paused",
    "outputs": [
    {
    "internalType": "bool",
    "name": "",
    "type": "bool"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "internalType": "address",
    "name": "account",
    "type": "address"
    }
    ],
    "name": "renounceRole",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "bytes32",
    "name": "role",
    "type": "bytes32"
    },
    {
    "internalType": "address",
    "name": "account",
    "type": "address"
    }
    ],
    "name": "revokeRole",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "bytes4",
    "name": "interfaceId",
    "type": "bytes4"
    }
    ],
    "name": "supportsInterface",
    "outputs": [
    {
    "internalType": "bool",
    "name": "",
    "type": "bool"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "implementationAddress",
    "type": "address"
    },
    {
    "internalType": "address",
    "name": "ownerAddress",
    "type": "address"
    },
    {
    "internalType": "bytes",
    "name": "data",
    "type": "bytes"
    }
    ],
    "stateMutability": "payable",
    "type": "constructor"
    },
    {
    "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": "previousImplementation",
    "type": "address"
    },
    {
    "indexed": true,
    "internalType": "address",
    "name": "newImplementation",
    "type": "address"
    }
    ],
    "name": "ProxyImplementationUpdated",
    "type": "event"
    },
    {
    "stateMutability": "payable",
    "type": "fallback"
    },
    {
    "inputs": [],
    "name": "owner",
    "outputs": [
    {
    "internalType": "address",
    "name": "",
    "type": "address"
    }
    ],
    "stateMutability": "view",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "newOwner",
    "type": "address"
    }
    ],
    "name": "transferOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "newImplementation",
    "type": "address"
    }
    ],
    "name": "upgradeTo",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
    },
    {
    "inputs": [
    {
    "internalType": "address",
    "name": "newImplementation",
    "type": "address"
    },
    {
    "internalType": "bytes",
    "name": "data",
    "type": "bytes"
    }
    ],
    "name": "upgradeToAndCall",
    "outputs": [],
    "stateMutability": "payable",
    "type": "function"
    },
    {
    "stateMutability": "payable",
    "type": "receive"
    }
    ]