1
+ /*
2
+ Copyright 2022 Set Labs Inc.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+
16
+ SPDX-License-Identifier: Apache License, Version 2.0
17
+ */
18
+
19
+ pragma solidity 0.6.10 ;
20
+ pragma experimental "ABIEncoderV2 " ;
21
+
22
+ import { ISetToken } from "./ISetToken.sol " ;
23
+
24
+ interface IClaimModule {
25
+ function initialize (
26
+ ISetToken _setToken ,
27
+ bool _anyoneClaim ,
28
+ address [] calldata _rewardPools ,
29
+ string [] calldata _integrationNames
30
+ ) external ;
31
+
32
+ function anyoneClaim (ISetToken _setToken ) external view returns (bool );
33
+ function claim (ISetToken _setToken , address _rewardPool , string calldata _integrationName ) external ;
34
+ function batchClaim (ISetToken _setToken , address [] calldata _rewardPools , string [] calldata _integrationNames ) external ;
35
+ function updateAnyoneClaim (ISetToken _setToken , bool _anyoneClaim ) external ;
36
+ function addClaim (ISetToken _setToken , address _rewardPool , string calldata _integrationName ) external ;
37
+ function batchAddClaim (ISetToken _setToken , address [] calldata _rewardPools , string [] calldata _integrationNames ) external ;
38
+ function removeClaim (ISetToken _setToken , address _rewardPool , string calldata _integrationName ) external ;
39
+ function batchRemoveClaim (ISetToken _setToken , address [] calldata _rewardPools , string [] calldata _integrationNames ) external ;
40
+ function removeModule () external ;
41
+ function getRewardPools (ISetToken _setToken ) external returns (address [] memory );
42
+ function isRewardPool (ISetToken _setToken , address _rewardPool ) external returns (bool );
43
+ function getRewardPoolClaims (ISetToken _setToken , address _rewardPool ) external returns (address [] memory );
44
+ function isRewardPoolClaim (ISetToken _setToken , address _rewardPool , string calldata _integrationName ) external returns (bool );
45
+ function getRewards (ISetToken _setToken , address _rewardPool , string calldata _integrationName ) external returns (uint256 );
46
+ }
0 commit comments