Skip to main content

IJBSingleTokenPaymentTerminalStore

Code​

https://github.com/jbx-protocol/juice-contracts-v3/blob/main/contracts/interfaces/IJBSingleTokenPaymentTerminalStore.sol

Definition​

interface IJBSingleTokenPaymentTerminalStore {
function fundingCycleStore() external view returns (IJBFundingCycleStore);

function directory() external view returns (IJBDirectory);

function prices() external view returns (IJBPrices);

function balanceOf(IJBSingleTokenPaymentTerminal _terminal, uint256 _projectId)
external
view
returns (uint256);

function usedDistributionLimitOf(
IJBSingleTokenPaymentTerminal _terminal,
uint256 _projectId,
uint256 _fundingCycleNumber
) external view returns (uint256);

function usedOverflowAllowanceOf(
IJBSingleTokenPaymentTerminal _terminal,
uint256 _projectId,
uint256 _fundingCycleConfiguration
) external view returns (uint256);

function currentOverflowOf(IJBSingleTokenPaymentTerminal _terminal, uint256 _projectId)
external
view
returns (uint256);

function currentTotalOverflowOf(
uint256 _projectId,
uint256 _decimals,
uint256 _currency
) external view returns (uint256);

function currentReclaimableOverflowOf(
IJBSingleTokenPaymentTerminal _terminal,
uint256 _projectId,
uint256 _tokenCount,
bool _useTotalOverflow
) external view returns (uint256);

function currentReclaimableOverflowOf(
uint256 _projectId,
uint256 _tokenCount,
uint256 _totalSupply,
uint256 _overflow
) external view returns (uint256);

function recordPaymentFrom(
address _payer,
JBTokenAmount memory _amount,
uint256 _projectId,
uint256 _baseWeightCurrency,
address _beneficiary,
string calldata _memo,
bytes memory _metadata
)
external
returns (
JBFundingCycle memory fundingCycle,
uint256 tokenCount,
JBPayDelegateAllocation[] memory delegateAllocations,
string memory memo
);

function recordRedemptionFor(
address _holder,
uint256 _projectId,
uint256 _tokenCount,
string calldata _memo,
bytes calldata _metadata
)
external
returns (
JBFundingCycle memory fundingCycle,
uint256 reclaimAmount,
JBRedemptionDelegateAllocation[] memory delegateAllocations,
string memory memo
);

function recordDistributionFor(
uint256 _projectId,
uint256 _amount,
uint256 _currency,
) external returns (JBFundingCycle memory fundingCycle, uint256 distributedAmount);

function recordUsedAllowanceOf(
uint256 _projectId,
uint256 _amount,
uint256 _currency,
) external returns (JBFundingCycle memory fundingCycle, uint256 withdrawnAmount);

function recordAddedBalanceFor(uint256 _projectId, uint256 _amount) external;

function recordMigration(uint256 _projectId) external returns (uint256 balance);
}