# filecoinWarmStorageServiceConfig

```ts
const filecoinWarmStorageServiceConfig: object;
```

Defined in: [packages/synapse-core/src/abis/generated.ts:3176](https://github.com/FilOzone/synapse-sdk/blob/1d6c4b9fe34534bf1087dfe41491b72be0b46858/packages/synapse-core/src/abis/generated.ts#L3176)

- [__View Contract on Filecoin Mainnet Filfox__](https://filfox.info/en/address/0x8408502033C418E1bbC97cE9ac48E5528F371A9f)
- [__View Contract on Filecoin Calibration Filscan__](https://calibration.filscan.io/address/0x02925630df557F957f70E112bA06e50965417CA0)

## Type Declaration

### abi

```ts
readonly abi: readonly [{
  inputs: readonly [{
     internalType: "address";
     name: "_pdpVerifierAddress";
     type: "address";
   }, {
     internalType: "address";
     name: "_paymentsContractAddress";
     type: "address";
   }, {
     internalType: "contract IERC20Metadata";
     name: "_usdfc";
     type: "address";
   }, {
     internalType: "address";
     name: "_filBeamBeneficiaryAddress";
     type: "address";
   }, {
     internalType: "contract ServiceProviderRegistry";
     name: "_serviceProviderRegistry";
     type: "address";
   }, {
     internalType: "contract SessionKeyRegistry";
     name: "_sessionKeyRegistry";
     type: "address";
  }];
  stateMutability: "nonpayable";
  type: "constructor";
}, {
  inputs: readonly [];
  name: "UPGRADE_INTERFACE_VERSION";
  outputs: readonly [{
     internalType: "string";
     name: "";
     type: "string";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "VERSION";
  outputs: readonly [{
     internalType: "string";
     name: "";
     type: "string";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
  }];
  name: "addApprovedProvider";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     components: readonly [{
        internalType: "address";
        name: "nextImplementation";
        type: "address";
      }, {
        internalType: "uint96";
        name: "afterEpoch";
        type: "uint96";
     }];
     internalType: "struct FilecoinWarmStorageService.PlannedUpgrade";
     name: "plannedUpgrade";
     type: "tuple";
  }];
  name: "announcePlannedUpgrade";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "totalBytes";
     type: "uint256";
  }];
  name: "calculateRatePerEpoch";
  outputs: readonly [{
     internalType: "uint256";
     name: "storageRate";
     type: "uint256";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint64";
     name: "_maxProvingPeriod";
     type: "uint64";
   }, {
     internalType: "uint256";
     name: "_challengeWindowSize";
     type: "uint256";
  }];
  name: "configureProvingPeriod";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "address";
     name: "serviceProvider";
     type: "address";
   }, {
     internalType: "bytes";
     name: "extraData";
     type: "bytes";
  }];
  name: "dataSetCreated";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "";
     type: "uint256";
   }, {
     internalType: "bytes";
     name: "";
     type: "bytes";
  }];
  name: "dataSetDeleted";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [];
  name: "eip712Domain";
  outputs: readonly [{
     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: readonly [{
     internalType: "bytes32";
     name: "slot";
     type: "bytes32";
  }];
  name: "extsload";
  outputs: readonly [{
     internalType: "bytes32";
     name: "";
     type: "bytes32";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "bytes32";
     name: "slot";
     type: "bytes32";
   }, {
     internalType: "uint256";
     name: "size";
     type: "uint256";
  }];
  name: "extsloadStruct";
  outputs: readonly [{
     internalType: "bytes32[]";
     name: "";
     type: "bytes32[]";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "filBeamBeneficiaryAddress";
  outputs: readonly [{
     internalType: "address";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "getEffectiveRates";
  outputs: readonly [{
     internalType: "uint256";
     name: "serviceFee";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "spPayment";
     type: "uint256";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "epoch";
     type: "uint256";
  }];
  name: "getProvingPeriodForEpoch";
  outputs: readonly [{
     internalType: "uint256";
     name: "";
     type: "uint256";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "getServicePrice";
  outputs: readonly [{
     components: readonly [{
        internalType: "uint256";
        name: "pricePerTiBPerMonthNoCDN";
        type: "uint256";
      }, {
        internalType: "uint256";
        name: "pricePerTiBCdnEgress";
        type: "uint256";
      }, {
        internalType: "uint256";
        name: "pricePerTiBCacheMissEgress";
        type: "uint256";
      }, {
        internalType: "contract IERC20";
        name: "tokenAddress";
        type: "address";
      }, {
        internalType: "uint256";
        name: "epochsPerMonth";
        type: "uint256";
      }, {
        internalType: "uint256";
        name: "minimumPricePerMonth";
        type: "uint256";
     }];
     internalType: "struct FilecoinWarmStorageService.ServicePricing";
     name: "pricing";
     type: "tuple";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint64";
     name: "_maxProvingPeriod";
     type: "uint64";
   }, {
     internalType: "uint256";
     name: "_challengeWindowSize";
     type: "uint256";
   }, {
     internalType: "address";
     name: "_filBeamControllerAddress";
     type: "address";
   }, {
     internalType: "string";
     name: "_name";
     type: "string";
   }, {
     internalType: "string";
     name: "_description";
     type: "string";
  }];
  name: "initialize";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "_viewContract";
     type: "address";
  }];
  name: "migrate";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "challengeEpoch";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "leafCount";
     type: "uint256";
   }, {
     internalType: "bytes";
     name: "";
     type: "bytes";
  }];
  name: "nextProvingPeriod";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [];
  name: "owner";
  outputs: readonly [{
     internalType: "address";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "paymentsContractAddress";
  outputs: readonly [{
     internalType: "address";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "pdpVerifierAddress";
  outputs: readonly [{
     internalType: "address";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "firstAdded";
     type: "uint256";
   }, {
     components: readonly [{
        internalType: "bytes";
        name: "data";
        type: "bytes";
     }];
     internalType: "struct Cids.Cid[]";
     name: "pieceData";
     type: "tuple[]";
   }, {
     internalType: "bytes";
     name: "extraData";
     type: "bytes";
  }];
  name: "piecesAdded";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256[]";
     name: "pieceIds";
     type: "uint256[]";
   }, {
     internalType: "bytes";
     name: "extraData";
     type: "bytes";
  }];
  name: "piecesScheduledRemove";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "challengeCount";
     type: "uint256";
  }];
  name: "possessionProven";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [];
  name: "proxiableUUID";
  outputs: readonly [{
     internalType: "bytes32";
     name: "";
     type: "bytes32";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "railId";
     type: "uint256";
   }, {
     internalType: "address";
     name: "terminator";
     type: "address";
   }, {
     internalType: "uint256";
     name: "endEpoch";
     type: "uint256";
  }];
  name: "railTerminated";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "index";
     type: "uint256";
  }];
  name: "removeApprovedProvider";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [];
  name: "renounceOwnership";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [];
  name: "serviceProviderRegistry";
  outputs: readonly [{
     internalType: "contract ServiceProviderRegistry";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "sessionKeyRegistry";
  outputs: readonly [{
     internalType: "contract SessionKeyRegistry";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "_viewContract";
     type: "address";
  }];
  name: "setViewContract";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "cdnAmount";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "cacheMissAmount";
     type: "uint256";
  }];
  name: "settleFilBeamPaymentRails";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "";
     type: "uint256";
   }, {
     internalType: "address";
     name: "";
     type: "address";
   }, {
     internalType: "address";
     name: "";
     type: "address";
   }, {
     internalType: "bytes";
     name: "";
     type: "bytes";
  }];
  name: "storageProviderChanged";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "terminateCDNService";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "terminateService";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "cdnAmountToAdd";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "cacheMissAmountToAdd";
     type: "uint256";
  }];
  name: "topUpCDNPaymentRails";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "newController";
     type: "address";
  }];
  name: "transferFilBeamController";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "newOwner";
     type: "address";
  }];
  name: "transferOwnership";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "newStoragePrice";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "newMinimumRate";
     type: "uint256";
  }];
  name: "updatePricing";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "newCommissionBps";
     type: "uint256";
  }];
  name: "updateServiceCommission";
  outputs: readonly [];
  stateMutability: "nonpayable";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "newImplementation";
     type: "address";
   }, {
     internalType: "bytes";
     name: "data";
     type: "bytes";
  }];
  name: "upgradeToAndCall";
  outputs: readonly [];
  stateMutability: "payable";
  type: "function";
}, {
  inputs: readonly [];
  name: "usdfcTokenAddress";
  outputs: readonly [{
     internalType: "contract IERC20Metadata";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "railId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "proposedAmount";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "fromEpoch";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "toEpoch";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "";
     type: "uint256";
  }];
  name: "validatePayment";
  outputs: readonly [{
     components: readonly [{
        internalType: "uint256";
        name: "modifiedAmount";
        type: "uint256";
      }, {
        internalType: "uint256";
        name: "settleUpto";
        type: "uint256";
      }, {
        internalType: "string";
        name: "note";
        type: "string";
     }];
     internalType: "struct IValidator.ValidationResult";
     name: "result";
     type: "tuple";
  }];
  stateMutability: "view";
  type: "function";
}, {
  inputs: readonly [];
  name: "viewContractAddress";
  outputs: readonly [{
     internalType: "address";
     name: "";
     type: "address";
  }];
  stateMutability: "view";
  type: "function";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cdnAmountAdded";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "totalCdnLockup";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cacheMissAmountAdded";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "totalCacheMissLockup";
     type: "uint256";
  }];
  name: "CDNPaymentRailsToppedUp";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "endEpoch";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cacheMissRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cdnRailId";
     type: "uint256";
  }];
  name: "CDNPaymentTerminated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "address";
     name: "caller";
     type: "address";
   }, {
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cacheMissRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cdnRailId";
     type: "uint256";
  }];
  name: "CDNServiceTerminated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: false;
     internalType: "string";
     name: "version";
     type: "string";
   }, {
     indexed: false;
     internalType: "address";
     name: "implementation";
     type: "address";
  }];
  name: "ContractUpgraded";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: true;
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "pdpRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cacheMissRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cdnRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "address";
     name: "payer";
     type: "address";
   }, {
     indexed: false;
     internalType: "address";
     name: "serviceProvider";
     type: "address";
   }, {
     indexed: false;
     internalType: "address";
     name: "payee";
     type: "address";
   }, {
     indexed: false;
     internalType: "string[]";
     name: "metadataKeys";
     type: "string[]";
   }, {
     indexed: false;
     internalType: "string[]";
     name: "metadataValues";
     type: "string[]";
  }];
  name: "DataSetCreated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: true;
     internalType: "address";
     name: "oldServiceProvider";
     type: "address";
   }, {
     indexed: true;
     internalType: "address";
     name: "newServiceProvider";
     type: "address";
  }];
  name: "DataSetServiceProviderChanged";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [];
  name: "EIP712DomainChanged";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "periodsFaulted";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "deadline";
     type: "uint256";
  }];
  name: "FaultRecord";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: false;
     internalType: "address";
     name: "oldController";
     type: "address";
   }, {
     indexed: false;
     internalType: "address";
     name: "newController";
     type: "address";
  }];
  name: "FilBeamControllerChanged";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: false;
     internalType: "string";
     name: "name";
     type: "string";
   }, {
     indexed: false;
     internalType: "string";
     name: "description";
     type: "string";
  }];
  name: "FilecoinServiceDeployed";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: false;
     internalType: "uint64";
     name: "version";
     type: "uint64";
  }];
  name: "Initialized";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "address";
     name: "previousOwner";
     type: "address";
   }, {
     indexed: true;
     internalType: "address";
     name: "newOwner";
     type: "address";
  }];
  name: "OwnershipTransferred";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "endEpoch";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "pdpRailId";
     type: "uint256";
  }];
  name: "PDPPaymentTerminated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: true;
     internalType: "uint256";
     name: "pieceId";
     type: "uint256";
   }, {
     components: readonly [{
        internalType: "bytes";
        name: "data";
        type: "bytes";
     }];
     indexed: false;
     internalType: "struct Cids.Cid";
     name: "pieceCid";
     type: "tuple";
   }, {
     indexed: false;
     internalType: "string[]";
     name: "keys";
     type: "string[]";
   }, {
     indexed: false;
     internalType: "string[]";
     name: "values";
     type: "string[]";
  }];
  name: "PieceAdded";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: false;
     internalType: "uint256";
     name: "storagePrice";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "minimumRate";
     type: "uint256";
  }];
  name: "PricingUpdated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
  }];
  name: "ProviderApproved";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
  }];
  name: "ProviderUnapproved";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "railId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "newRate";
     type: "uint256";
  }];
  name: "RailRateUpdated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "address";
     name: "caller";
     type: "address";
   }, {
     indexed: true;
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "pdpRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cacheMissRailId";
     type: "uint256";
   }, {
     indexed: false;
     internalType: "uint256";
     name: "cdnRailId";
     type: "uint256";
  }];
  name: "ServiceTerminated";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     components: readonly [{
        internalType: "address";
        name: "nextImplementation";
        type: "address";
      }, {
        internalType: "uint96";
        name: "afterEpoch";
        type: "uint96";
     }];
     indexed: false;
     internalType: "struct FilecoinWarmStorageService.PlannedUpgrade";
     name: "plannedUpgrade";
     type: "tuple";
  }];
  name: "UpgradeAnnounced";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "address";
     name: "implementation";
     type: "address";
  }];
  name: "Upgraded";
  type: "event";
}, {
  anonymous: false;
  inputs: readonly [{
     indexed: true;
     internalType: "address";
     name: "viewContract";
     type: "address";
  }];
  name: "ViewContractSet";
  type: "event";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "target";
     type: "address";
  }];
  name: "AddressEmptyCode";
  type: "error";
}, {
  inputs: readonly [];
  name: "AtLeastOnePriceMustBeNonZero";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "CDNPaymentAlreadyTerminated";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "CacheMissPaymentAlreadyTerminated";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "address";
     name: "expectedPayer";
     type: "address";
   }, {
     internalType: "address";
     name: "caller";
     type: "address";
  }];
  name: "CallerNotPayer";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "address";
     name: "expectedPayer";
     type: "address";
   }, {
     internalType: "address";
     name: "expectedPayee";
     type: "address";
   }, {
     internalType: "address";
     name: "caller";
     type: "address";
  }];
  name: "CallerNotPayerOrPayee";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "expected";
     type: "address";
   }, {
     internalType: "address";
     name: "actual";
     type: "address";
  }];
  name: "CallerNotPayments";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "windowStart";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "nowBlock";
     type: "uint256";
  }];
  name: "ChallengeWindowTooEarly";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "clientDataSetId";
     type: "uint256";
  }];
  name: "ClientDataSetAlreadyRegistered";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "enum Errors.CommissionType";
     name: "commissionType";
     type: "uint8";
   }, {
     internalType: "uint256";
     name: "max";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "actual";
     type: "uint256";
  }];
  name: "CommissionExceedsMaximum";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "railId";
     type: "uint256";
  }];
  name: "DataSetNotFoundForRail";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "DataSetNotRegistered";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "DataSetPaymentAlreadyTerminated";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "pdpEndEpoch";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "currentBlock";
     type: "uint256";
  }];
  name: "DataSetPaymentBeyondEndEpoch";
  type: "error";
}, {
  inputs: readonly [];
  name: "DivisionByZero";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "string";
     name: "key";
     type: "string";
  }];
  name: "DuplicateMetadataKey";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "implementation";
     type: "address";
  }];
  name: "ERC1967InvalidImplementation";
  type: "error";
}, {
  inputs: readonly [];
  name: "ERC1967NonPayable";
  type: "error";
}, {
  inputs: readonly [];
  name: "ExtraDataRequired";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "actualSize";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "maxAllowedSize";
     type: "uint256";
  }];
  name: "ExtraDataTooLarge";
  type: "error";
}, {
  inputs: readonly [];
  name: "FailedCall";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "FilBeamServiceNotConfigured";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "payer";
     type: "address";
   }, {
     internalType: "uint256";
     name: "minimumRequired";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "available";
     type: "uint256";
  }];
  name: "InsufficientFundsForMinimumRate";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "payer";
     type: "address";
   }, {
     internalType: "address";
     name: "operator";
     type: "address";
   }, {
     internalType: "uint256";
     name: "lockupAllowance";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "lockupUsage";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "minimumLockupRequired";
     type: "uint256";
  }];
  name: "InsufficientLockupAllowance";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "payer";
     type: "address";
   }, {
     internalType: "address";
     name: "operator";
     type: "address";
   }, {
     internalType: "uint256";
     name: "maxLockupPeriod";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "requiredLockupPeriod";
     type: "uint256";
  }];
  name: "InsufficientMaxLockupPeriod";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "payer";
     type: "address";
   }, {
     internalType: "address";
     name: "operator";
     type: "address";
   }, {
     internalType: "uint256";
     name: "rateAllowance";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "rateUsage";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "minimumRateRequired";
     type: "uint256";
  }];
  name: "InsufficientRateAllowance";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "minExpected";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "actual";
     type: "uint256";
  }];
  name: "InvalidChallengeCount";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "minAllowed";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "maxAllowed";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "actual";
     type: "uint256";
  }];
  name: "InvalidChallengeEpoch";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "maxProvingPeriod";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "challengeWindowSize";
     type: "uint256";
  }];
  name: "InvalidChallengeWindowSize";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "InvalidDataSetId";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "fromEpoch";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "toEpoch";
     type: "uint256";
  }];
  name: "InvalidEpochRange";
  type: "error";
}, {
  inputs: readonly [];
  name: "InvalidInitialization";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "length";
     type: "uint256";
  }];
  name: "InvalidServiceDescriptionLength";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "length";
     type: "uint256";
  }];
  name: "InvalidServiceNameLength";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "InvalidTopUpAmount";
  type: "error";
}, {
  inputs: readonly [];
  name: "MaxProvingPeriodZero";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "metadataArrayCount";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "pieceCount";
     type: "uint256";
  }];
  name: "MetadataArrayCountMismatch";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "keysLength";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "valuesLength";
     type: "uint256";
  }];
  name: "MetadataKeyAndValueLengthMismatch";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "index";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "maxAllowed";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "length";
     type: "uint256";
  }];
  name: "MetadataKeyExceedsMaxLength";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "index";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "maxAllowed";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "length";
     type: "uint256";
  }];
  name: "MetadataValueExceedsMaxLength";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "periodDeadline";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "nowBlock";
     type: "uint256";
  }];
  name: "NextProvingPeriodAlreadyCalled";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "NoPDPPaymentRail";
  type: "error";
}, {
  inputs: readonly [];
  name: "NotInitializing";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "expected";
     type: "address";
   }, {
     internalType: "address";
     name: "actual";
     type: "address";
  }];
  name: "OnlyFilBeamControllerAllowed";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "expected";
     type: "address";
   }, {
     internalType: "address";
     name: "actual";
     type: "address";
  }];
  name: "OnlyPDPVerifierAllowed";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "payer";
     type: "address";
   }, {
     internalType: "address";
     name: "operator";
     type: "address";
  }];
  name: "OperatorNotApproved";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "owner";
     type: "address";
  }];
  name: "OwnableInvalidOwner";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "account";
     type: "address";
  }];
  name: "OwnableUnauthorizedAccount";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "pdpEndEpoch";
     type: "uint256";
  }];
  name: "PaymentRailsNotFinalized";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "enum Errors.PriceType";
     name: "priceType";
     type: "uint8";
   }, {
     internalType: "uint256";
     name: "maxAllowed";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "actual";
     type: "uint256";
  }];
  name: "PriceExceedsMaximum";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "ProofAlreadySubmitted";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
  }];
  name: "ProviderAlreadyApproved";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "providerId";
     type: "uint256";
  }];
  name: "ProviderNotInApprovedList";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "address";
     name: "provider";
     type: "address";
  }];
  name: "ProviderNotRegistered";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
  }];
  name: "ProvingNotStarted";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "dataSetId";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "deadline";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "nowBlock";
     type: "uint256";
  }];
  name: "ProvingPeriodPassed";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "railId";
     type: "uint256";
  }];
  name: "RailNotAssociated";
  type: "error";
}, {
  inputs: readonly [];
  name: "ServiceContractMustTerminateRail";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "uint256";
     name: "maxAllowed";
     type: "uint256";
   }, {
     internalType: "uint256";
     name: "keysLength";
     type: "uint256";
  }];
  name: "TooManyMetadataKeys";
  type: "error";
}, {
  inputs: readonly [];
  name: "UUPSUnauthorizedCallContext";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "bytes32";
     name: "slot";
     type: "bytes32";
  }];
  name: "UUPSUnsupportedProxiableUUID";
  type: "error";
}, {
  inputs: readonly [{
     internalType: "enum Errors.AddressField";
     name: "field";
     type: "uint8";
  }];
  name: "ZeroAddress";
  type: "error";
}] = filecoinWarmStorageServiceAbi;
```

### address

```ts
readonly address: object = filecoinWarmStorageServiceAddress;
```

#### address.314

```ts
readonly 314: "0x8408502033C418E1bbC97cE9ac48E5528F371A9f" = '0x8408502033C418E1bbC97cE9ac48E5528F371A9f';
```

#### address.314159

```ts
readonly 314159: "0x02925630df557F957f70E112bA06e50965417CA0" = '0x02925630df557F957f70E112bA06e50965417CA0';
```