aboutsummaryrefslogtreecommitdiffstats
path: root/src/types.ts
diff options
context:
space:
mode:
authorLeonid Logvinov <logvinov.leon@gmail.com>2017-05-29 17:39:12 +0800
committerLeonid Logvinov <logvinov.leon@gmail.com>2017-05-29 17:39:12 +0800
commit0848fe96cf09679926d307c86414cfb8b6f16d78 (patch)
treeec1da9d45a01b846de9b45a2bb57fee8bdb0f23e /src/types.ts
parent62cc3b919c73b7726793808e3b9631dba41cef28 (diff)
downloaddexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.tar
dexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.tar.gz
dexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.tar.bz2
dexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.tar.lz
dexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.tar.xz
dexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.tar.zst
dexon-sol-tools-0848fe96cf09679926d307c86414cfb8b6f16d78.zip
Move files up and remove ts folder
Diffstat (limited to 'src/types.ts')
-rw-r--r--src/types.ts36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/types.ts b/src/types.ts
new file mode 100644
index 000000000..4da03a4d3
--- /dev/null
+++ b/src/types.ts
@@ -0,0 +1,36 @@
+import * as _ from 'lodash';
+
+// Utility function to create a K:V from a list of strings
+// Adapted from: https://basarat.gitbooks.io/typescript/content/docs/types/literal-types.html
+function strEnum(values: string[]): {[key: string]: string} {
+ return _.reduce(values, (result, key) => {
+ result[key] = key;
+ return result;
+ }, Object.create(null));
+}
+
+export const ZeroExError = strEnum([
+ 'CONTRACT_DOES_NOT_EXIST',
+ 'UNHANDLED_ERROR',
+ 'USER_HAS_NO_ASSOCIATED_ADDRESSES',
+]);
+export type ZeroExError = keyof typeof ZeroExError;
+
+/**
+ * Elliptic Curve signature
+ */
+export interface ECSignature {
+ v: number;
+ r: string;
+ s: string;
+}
+
+export interface ExchangeContract {
+ isValidSignature: any;
+}
+
+export const SolidityTypes = strEnum([
+ 'address',
+ 'uint256',
+]);
+export type SolidityTypes = keyof typeof SolidityTypes;