FullTrustedUW

This is an implementation of the IUnderwriter interface that just decodes what it receives with abi.decode and returns it, without any pricing computation or signature validation.

The access validations are expected to be done on the RiskModule methods: only callers authorized to call newPolicy, replacePolicy or cancelPolicy can use this underwriter.

Source: FullTrustedUW.sol · Full documentation: ensuro.readthedocs.io/en/latest/underwriters/FullTrustedUW

External Methods

priceNewPolicy

function priceNewPolicy(address rm, bytes calldata inputData) external pure returns (uint256 payout, uint256 premium, uint256 lossProb, uint40 expiration, uint96 internalId, Policy.Params memory params)

Decodes inputData as (uint256 payout, uint256 premium, uint256 lossProb, uint40 expiration, uint96 internalId, Policy.Params params).

pricePolicyReplacement

function pricePolicyReplacement(address rm, bytes calldata inputData) external pure returns (Policy.PolicyData memory oldPolicy, uint256 payout, uint256 premium, uint256 lossProb, uint40 expiration, uint96 internalId, Policy.Params memory params)

Decodes inputData as (Policy.PolicyData oldPolicy, uint256 payout, uint256 premium, uint256 lossProb, uint40 expiration, uint96 internalId, Policy.Params params).

pricePolicyCancellation

function pricePolicyCancellation(address rm, bytes calldata inputData) external view returns (Policy.PolicyData memory policyToCancel, uint256 purePremiumRefund, uint256 jrCocRefund, uint256 srCocRefund)

Decodes inputData as (Policy.PolicyData policyToCancel, uint256 purePremiumRefund, uint256 jrCocRefund, uint256 srCocRefund). A refund of type(uint256).max is interpreted as the full non-accrued cost of capital.