54 lines
1.2 KiB
Plaintext
54 lines
1.2 KiB
Plaintext
contract PledgedTokens {
|
|
|
|
MinimeToken
|
|
}
|
|
|
|
|
|
contract LiquidPledgingInterface {
|
|
|
|
function deposit(uint64 user) payable;
|
|
|
|
function withdraw(uint64 user, uint64 idNote, uint amount);
|
|
|
|
function delegate(uint64 user, uint64 idNote, uint64 purpuse, uint amout);
|
|
function undelegate(uint64 user, uint64 idNote, uint amount);
|
|
|
|
|
|
function propose(uint user, uint64 idNote, uint64 recipient, uint amount);
|
|
function unPropose(uint user, uint64 idNote, uint amount);
|
|
|
|
function transfer(uint64 user, uint64 idNote, uint64 recipient, uint amount);
|
|
}
|
|
|
|
|
|
|
|
|
|
contract Project {
|
|
|
|
struct TokenOwnership {
|
|
address token;
|
|
uint purchaseBlock;
|
|
uint amount;
|
|
bytes32 ref;
|
|
}
|
|
|
|
Minime2Token public projectToken;
|
|
|
|
mapping(uint => Minime2Token) public pledgedTokens;
|
|
|
|
TokenOwnership[] public ownerships;
|
|
|
|
|
|
function pledge(address investor, uint amount, uint precommit);
|
|
|
|
function unpledge(address investor, uint amount);
|
|
|
|
function invest(address investor, uint amount);
|
|
function unInvest(address investor, uint amount);
|
|
|
|
function pay(address dest, uint amount, uint block) onlyProjectManager;
|
|
function receive(uint amount);
|
|
|
|
function payDividends(uint token, uint amount, uint payBlock);
|
|
}
|