-
Notifications
You must be signed in to change notification settings - Fork 20
/
Copy pathIERC20hTokenBranchFactory.sol
31 lines (26 loc) · 1.13 KB
/
IERC20hTokenBranchFactory.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import {ERC20hTokenBranch} from "../token/ERC20hTokenBranch.sol";
/**
* @title ERC20hTokenBranchFactory Interface
* @author MaiaDAO
* @notice Factory contract allowing for permissionless deployment of new Branch hTokens in Branch
* Chains of Ulysses Omnichain Liquidity Protocol.
* @dev This contract is called by the chain's Core Branch Router.
*/
interface IERC20hTokenBranchFactory {
/*///////////////////////////////////////////////////////////////
hTOKEN FUNCTIONS
//////////////////////////////////////////////////////////////*/
/**
* @notice Function to create a new Branch hToken.
* @param _name Name of the Token.
* @param _symbol Symbol of the Token.
*/
function createToken(string memory _name, string memory _symbol) external returns (ERC20hTokenBranch newToken);
/*///////////////////////////////////////////////////////////////
ERRORS
//////////////////////////////////////////////////////////////*/
error UnrecognizedCoreRouter();
error UnrecognizedPort();
}