import { AssetProxyId, ObjectMap } from '@0x/types'; // Reusable export enum AsyncProcessState { NONE = 'None', PENDING = 'Pending', SUCCESS = 'Success', FAILURE = 'Failure', } export type FunctionType = (...args: any[]) => any; export type ActionCreatorsMapObject = ObjectMap; export type ActionsUnion = ReturnType; export interface ERC20AssetMetaData { assetProxyId: AssetProxyId.ERC20; decimals: number; primaryColor?: string; symbol: string; } export interface ERC721AssetMetaData { assetProxyId: AssetProxyId.ERC721; name: string; representationUrl?: string; primaryColor?: string; } export type AssetMetaData = ERC20AssetMetaData | ERC721AssetMetaData; export interface ERC20Asset { assetData: string; metaData: ERC20AssetMetaData; } export interface ERC721Asset { assetData: string; metaData: ERC721AssetMetaData; } export interface Asset { assetData: string; metaData: AssetMetaData; } export enum Network { Kovan = 42, Mainnet = 1, } export enum ZeroExInstantError { AssetMetaDataNotAvailable = 'ASSET_META_DATA_NOT_AVAILABLE', }