aboutsummaryrefslogtreecommitdiffstats
path: root/packages/types/src/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/types/src/index.ts')
-rw-r--r--packages/types/src/index.ts72
1 files changed, 68 insertions, 4 deletions
diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts
index 47f3e3239..8bd6e097e 100644
--- a/packages/types/src/index.ts
+++ b/packages/types/src/index.ts
@@ -12,16 +12,28 @@ export interface Order {
makerAssetData: string;
takerAssetData: string;
salt: BigNumber;
+ exchangeAddress: string;
feeRecipientAddress: string;
expirationTimeSeconds: BigNumber;
}
-export interface SignedOrder extends UnsignedOrder {
- signature: string;
+export interface OrderWithoutExchangeAddress {
+ senderAddress: string;
+ makerAddress: string;
+ takerAddress: string;
+ makerFee: BigNumber;
+ takerFee: BigNumber;
+ makerAssetAmount: BigNumber;
+ takerAssetAmount: BigNumber;
+ makerAssetData: string;
+ takerAssetData: string;
+ salt: BigNumber;
+ feeRecipientAddress: string;
+ expirationTimeSeconds: BigNumber;
}
-export interface UnsignedOrder extends Order {
- exchangeAddress: string;
+export interface SignedOrder extends Order {
+ signature: string;
}
/**
@@ -34,6 +46,14 @@ export interface ECSignature {
}
/**
+ * Validator signature components
+ */
+export interface ValidatorSignature {
+ validatorAddress: string;
+ signature: string;
+}
+
+/**
* Errors originating from the 0x exchange contract
*/
export enum ExchangeContractErrs {
@@ -106,3 +126,47 @@ export interface Token {
symbol: string;
decimals: number;
}
+
+export enum SignatureType {
+ Illegal,
+ Invalid,
+ EIP712,
+ EthSign,
+ Caller,
+ Wallet,
+ Validator,
+ PreSigned,
+ Trezor,
+}
+
+/**
+ * Elliptic Curve signature
+ */
+export interface ECSignature {
+ v: number;
+ r: string;
+ s: string;
+}
+
+export enum AssetProxyId {
+ INVALID,
+ ERC20,
+ ERC721,
+}
+
+export interface ERC20ProxyData {
+ assetProxyId: AssetProxyId;
+ tokenAddress: string;
+}
+
+export interface ERC721ProxyData {
+ assetProxyId: AssetProxyId;
+ tokenAddress: string;
+ tokenId: BigNumber;
+}
+
+export interface ProxyData {
+ assetProxyId: AssetProxyId;
+ tokenAddress?: string;
+ data?: any;
+}