UNPKG

25.1 kBTypeScriptView Raw
1import { BigNumber } from 'bignumber.js';
2import { ContractAbi, ContractChains, ContractEventArg, DecodedLogArgs, DevdocOutput, LogWithDecodedArgs } from 'ethereum-types';
3export interface Order {
4 chainId: number;
5 exchangeAddress: string;
6 makerAddress: string;
7 takerAddress: string;
8 feeRecipientAddress: string;
9 senderAddress: string;
10 makerAssetAmount: BigNumber;
11 takerAssetAmount: BigNumber;
12 makerFee: BigNumber;
13 takerFee: BigNumber;
14 expirationTimeSeconds: BigNumber;
15 salt: BigNumber;
16 makerAssetData: string;
17 takerAssetData: string;
18 makerFeeAssetData: string;
19 takerFeeAssetData: string;
20}
21export interface SignedOrder extends Order {
22 signature: string;
23}
24export declare enum MarketOperation {
25 Sell = "Sell",
26 Buy = "Buy"
27}
28/**
29 * ZeroExTransaction for use with 0x Exchange executeTransaction
30 */
31export interface ZeroExTransaction {
32 salt: BigNumber;
33 expirationTimeSeconds: BigNumber;
34 gasPrice: BigNumber;
35 signerAddress: string;
36 data: string;
37 domain: EIP712DomainWithDefaultSchema;
38}
39export interface SignedZeroExTransaction extends ZeroExTransaction {
40 signature: string;
41}
42/**
43 * Exchange Proxy meta transaction struct.
44 */
45export interface ExchangeProxyMetaTransaction {
46 signer: string;
47 sender: string;
48 minGasPrice: BigNumber;
49 maxGasPrice: BigNumber;
50 expirationTimeSeconds: BigNumber;
51 salt: BigNumber;
52 callData: string;
53 value: BigNumber;
54 feeToken: string;
55 feeAmount: BigNumber;
56 domain: EIP712DomainWithDefaultSchema;
57}
58/**
59 * `ExchangeProxyMetaTransaction` with `signature` field.
60 */
61export interface SignedExchangeProxyMetaTransaction extends ExchangeProxyMetaTransaction {
62 signature: string;
63}
64/**
65 * Elliptic Curve signature
66 */
67export interface ECSignature {
68 v: number;
69 r: string;
70 s: string;
71}
72/**
73 * Validator signature components
74 */
75export interface ValidatorSignature {
76 validatorAddress: string;
77 signature: string;
78}
79/**
80 * Errors originating from the 0x exchange contract
81 */
82export declare enum ExchangeContractErrs {
83 OrderFillExpired = "ORDER_FILL_EXPIRED",
84 OrderCancelExpired = "ORDER_CANCEL_EXPIRED",
85 OrderCancelled = "ORDER_CANCELLED",
86 OrderFillAmountZero = "ORDER_FILL_AMOUNT_ZERO",
87 OrderRemainingFillAmountZero = "ORDER_REMAINING_FILL_AMOUNT_ZERO",
88 OrderFillRoundingError = "ORDER_FILL_ROUNDING_ERROR",
89 FillBalanceAllowanceError = "FILL_BALANCE_ALLOWANCE_ERROR",
90 InsufficientTakerBalance = "INSUFFICIENT_TAKER_BALANCE",
91 InsufficientTakerAllowance = "INSUFFICIENT_TAKER_ALLOWANCE",
92 InsufficientMakerBalance = "INSUFFICIENT_MAKER_BALANCE",
93 InsufficientMakerAllowance = "INSUFFICIENT_MAKER_ALLOWANCE",
94 InsufficientTakerFeeBalance = "INSUFFICIENT_TAKER_FEE_BALANCE",
95 InsufficientTakerFeeAllowance = "INSUFFICIENT_TAKER_FEE_ALLOWANCE",
96 InsufficientMakerFeeBalance = "INSUFFICIENT_MAKER_FEE_BALANCE",
97 InsufficientMakerFeeAllowance = "INSUFFICIENT_MAKER_FEE_ALLOWANCE",
98 TransactionSenderIsNotFillOrderTaker = "TRANSACTION_SENDER_IS_NOT_FILL_ORDER_TAKER",
99 MultipleMakersInSingleCancelBatchDisallowed = "MULTIPLE_MAKERS_IN_SINGLE_CANCEL_BATCH_DISALLOWED",
100 InsufficientRemainingFillAmount = "INSUFFICIENT_REMAINING_FILL_AMOUNT",
101 MultipleTakerTokensInFillUpToDisallowed = "MULTIPLE_TAKER_TOKENS_IN_FILL_UP_TO_DISALLOWED",
102 BatchOrdersMustHaveSameExchangeAddress = "BATCH_ORDERS_MUST_HAVE_SAME_EXCHANGE_ADDRESS",
103 BatchOrdersMustHaveAtLeastOneItem = "BATCH_ORDERS_MUST_HAVE_AT_LEAST_ONE_ITEM"
104}
105export declare type ArtifactContractName = 'ZRX' | 'TokenTransferProxy' | 'TokenRegistry' | 'Token' | 'Exchange' | 'EtherToken';
106export interface Artifact {
107 contract_name: ArtifactContractName;
108 abi: ContractAbi;
109 chains: {
110 [chainId: number]: {
111 address: string;
112 };
113 };
114}
115export declare type DoneCallback = (err?: Error) => void;
116export interface OrderRelevantState {
117 makerBalance: BigNumber;
118 makerIndividualBalances: ObjectMap<BigNumber>;
119 makerProxyAllowance: BigNumber;
120 makerIndividualProxyAllowances: ObjectMap<BigNumber>;
121 makerFeeBalance: BigNumber;
122 makerFeeProxyAllowance: BigNumber;
123 filledTakerAssetAmount: BigNumber;
124 remainingFillableMakerAssetAmount: BigNumber;
125 remainingFillableTakerAssetAmount: BigNumber;
126}
127export interface OrderStateValid {
128 isValid: true;
129 orderHash: string;
130 orderRelevantState: OrderRelevantState;
131 transactionHash?: string;
132}
133export interface OrderStateInvalid {
134 isValid: false;
135 orderHash: string;
136 error: ExchangeContractErrs;
137 transactionHash?: string;
138}
139export declare type OrderState = OrderStateValid | OrderStateInvalid;
140export interface Token {
141 name: string;
142 address: string;
143 symbol: string;
144 decimals: number;
145}
146export declare enum SignatureType {
147 Illegal = 0,
148 Invalid = 1,
149 EIP712 = 2,
150 EthSign = 3,
151 Wallet = 4,
152 Validator = 5,
153 PreSigned = 6,
154 EIP1271Wallet = 7,
155 NSignatureTypes = 8
156}
157export declare enum AssetProxyId {
158 ERC20 = "0xf47261b0",
159 ERC721 = "0x02571792",
160 MultiAsset = "0x94cfcdd7",
161 ERC1155 = "0xa7cb5fb7",
162 StaticCall = "0xc339d10a",
163 ERC20Bridge = "0xdc1600f3"
164}
165export interface ERC20AssetData {
166 assetProxyId: string;
167 tokenAddress: string;
168}
169export interface ERC20BridgeAssetData {
170 assetProxyId: string;
171 tokenAddress: string;
172 bridgeAddress: string;
173 bridgeData: string;
174}
175export interface ERC721AssetData {
176 assetProxyId: string;
177 tokenAddress: string;
178 tokenId: BigNumber;
179}
180export interface ERC1155AssetData {
181 assetProxyId: string;
182 tokenAddress: string;
183 tokenIds: BigNumber[];
184 tokenValues: BigNumber[];
185 callbackData: string;
186}
187export interface StaticCallAssetData {
188 assetProxyId: string;
189 callTarget: string;
190 staticCallData: string;
191 callResultHash: string;
192}
193export interface ERC1155AssetDataNoProxyId {
194 tokenAddress: string;
195 tokenValues: BigNumber[];
196 tokenIds: BigNumber[];
197 callbackData: string;
198}
199export declare type SingleAssetData = ERC20AssetData | ERC20BridgeAssetData | ERC721AssetData | ERC1155AssetData | StaticCallAssetData;
200export interface MultiAssetData {
201 assetProxyId: string;
202 amounts: BigNumber[];
203 nestedAssetData: string[];
204}
205export interface MultiAssetDataWithRecursiveDecoding {
206 assetProxyId: string;
207 amounts: BigNumber[];
208 nestedAssetData: SingleAssetData[];
209}
210export interface DutchAuctionData {
211 assetData: AssetData;
212 beginTimeSeconds: BigNumber;
213 beginAmount: BigNumber;
214}
215export declare type AssetData = SingleAssetData | MultiAssetData | MultiAssetDataWithRecursiveDecoding;
216export declare enum RevertReason {
217 OrderUnfillable = "ORDER_UNFILLABLE",
218 InvalidMaker = "INVALID_MAKER",
219 InvalidTaker = "INVALID_TAKER",
220 InvalidSender = "INVALID_SENDER",
221 InvalidOrderSignature = "INVALID_ORDER_SIGNATURE",
222 InvalidTakerAmount = "INVALID_TAKER_AMOUNT",
223 DivisionByZero = "DIVISION_BY_ZERO",
224 RoundingError = "ROUNDING_ERROR",
225 InvalidSignature = "INVALID_SIGNATURE",
226 SignatureIllegal = "SIGNATURE_ILLEGAL",
227 SignatureInvalid = "SIGNATURE_INVALID",
228 SignatureUnsupported = "SIGNATURE_UNSUPPORTED",
229 TakerOverpay = "TAKER_OVERPAY",
230 OrderOverfill = "ORDER_OVERFILL",
231 InvalidFillPrice = "INVALID_FILL_PRICE",
232 InvalidNewOrderEpoch = "INVALID_NEW_ORDER_EPOCH",
233 CompleteFillFailed = "COMPLETE_FILL_FAILED",
234 NegativeSpreadRequired = "NEGATIVE_SPREAD_REQUIRED",
235 ReentrancyIllegal = "REENTRANCY_ILLEGAL",
236 InvalidTxHash = "INVALID_TX_HASH",
237 InvalidTxSignature = "INVALID_TX_SIGNATURE",
238 FailedExecution = "FAILED_EXECUTION",
239 AssetProxyAlreadyExists = "ASSET_PROXY_ALREADY_EXISTS",
240 LengthGreaterThan0Required = "LENGTH_GREATER_THAN_0_REQUIRED",
241 LengthGreaterThan3Required = "LENGTH_GREATER_THAN_3_REQUIRED",
242 LengthGreaterThan131Required = "LENGTH_GREATER_THAN_131_REQUIRED",
243 Length0Required = "LENGTH_0_REQUIRED",
244 Length65Required = "LENGTH_65_REQUIRED",
245 InvalidAmount = "INVALID_AMOUNT",
246 TransferFailed = "TRANSFER_FAILED",
247 SenderNotAuthorized = "SENDER_NOT_AUTHORIZED",
248 TargetNotAuthorized = "TARGET_NOT_AUTHORIZED",
249 TargetAlreadyAuthorized = "TARGET_ALREADY_AUTHORIZED",
250 IndexOutOfBounds = "INDEX_OUT_OF_BOUNDS",
251 AuthorizedAddressMismatch = "AUTHORIZED_ADDRESS_MISMATCH",
252 OnlyContractOwner = "ONLY_CONTRACT_OWNER",
253 MakerNotWhitelisted = "MAKER_NOT_WHITELISTED",
254 TakerNotWhitelisted = "TAKER_NOT_WHITELISTED",
255 AssetProxyDoesNotExist = "ASSET_PROXY_DOES_NOT_EXIST",
256 LengthMismatch = "LENGTH_MISMATCH",
257 LibBytesGreaterThanZeroLengthRequired = "GREATER_THAN_ZERO_LENGTH_REQUIRED",
258 LibBytesGreaterOrEqualTo4LengthRequired = "GREATER_OR_EQUAL_TO_4_LENGTH_REQUIRED",
259 LibBytesGreaterOrEqualTo20LengthRequired = "GREATER_OR_EQUAL_TO_20_LENGTH_REQUIRED",
260 LibBytesGreaterOrEqualTo32LengthRequired = "GREATER_OR_EQUAL_TO_32_LENGTH_REQUIRED",
261 LibBytesGreaterOrEqualToNestedBytesLengthRequired = "GREATER_OR_EQUAL_TO_NESTED_BYTES_LENGTH_REQUIRED",
262 LibBytesGreaterOrEqualToSourceBytesLengthRequired = "GREATER_OR_EQUAL_TO_SOURCE_BYTES_LENGTH_REQUIRED",
263 Erc20InsufficientBalance = "ERC20_INSUFFICIENT_BALANCE",
264 Erc20InsufficientAllowance = "ERC20_INSUFFICIENT_ALLOWANCE",
265 FeePercentageTooLarge = "FEE_PERCENTAGE_TOO_LARGE",
266 ValueGreaterThanZero = "VALUE_GREATER_THAN_ZERO",
267 InvalidMsgValue = "INVALID_MSG_VALUE",
268 InsufficientEthRemaining = "INSUFFICIENT_ETH_REMAINING",
269 Uint256Overflow = "UINT256_OVERFLOW",
270 Erc721ZeroToAddress = "ERC721_ZERO_TO_ADDRESS",
271 Erc721OwnerMismatch = "ERC721_OWNER_MISMATCH",
272 Erc721InvalidSpender = "ERC721_INVALID_SPENDER",
273 Erc721ZeroOwner = "ERC721_ZERO_OWNER",
274 Erc721InvalidSelector = "ERC721_INVALID_SELECTOR",
275 WalletError = "WALLET_ERROR",
276 ValidatorError = "VALIDATOR_ERROR",
277 InvalidFunctionSelector = "INVALID_FUNCTION_SELECTOR",
278 InvalidAssetData = "INVALID_ASSET_DATA",
279 InvalidAssetProxy = "INVALID_ASSET_PROXY",
280 UnregisteredAssetProxy = "UNREGISTERED_ASSET_PROXY",
281 TxFullyConfirmed = "TX_FULLY_CONFIRMED",
282 TxNotFullyConfirmed = "TX_NOT_FULLY_CONFIRMED",
283 TimeLockIncomplete = "TIME_LOCK_INCOMPLETE",
284 InvalidFreeMemoryPtr = "INVALID_FREE_MEMORY_PTR",
285 AuctionInvalidAmount = "INVALID_AMOUNT",
286 AuctionExpired = "AUCTION_EXPIRED",
287 AuctionNotStarted = "AUCTION_NOT_STARTED",
288 AuctionInvalidBeginTime = "INVALID_BEGIN_TIME",
289 InvalidAssetDataEnd = "INVALID_ASSET_DATA_END",
290 InvalidOrBlockedExchangeSelector = "INVALID_OR_BLOCKED_EXCHANGE_SELECTOR",
291 BalanceQueryFailed = "BALANCE_QUERY_FAILED",
292 AtLeastOneAddressDoesNotMeetBalanceThreshold = "AT_LEAST_ONE_ADDRESS_DOES_NOT_MEET_BALANCE_THRESHOLD",
293 FromLessThanToRequired = "FROM_LESS_THAN_TO_REQUIRED",
294 ToLessThanLengthRequired = "TO_LESS_THAN_LENGTH_REQUIRED",
295 InvalidApprovalSignature = "INVALID_APPROVAL_SIGNATURE",
296 ApprovalExpired = "APPROVAL_EXPIRED",
297 InvalidOrigin = "INVALID_ORIGIN",
298 AmountEqualToOneRequired = "AMOUNT_EQUAL_TO_ONE_REQUIRED",
299 BadReceiverReturnValue = "BAD_RECEIVER_RETURN_VALUE",
300 CannotTransferToAddressZero = "CANNOT_TRANSFER_TO_ADDRESS_ZERO",
301 InsufficientAllowance = "INSUFFICIENT_ALLOWANCE",
302 NFTNotOwnedByFromAddress = "NFT_NOT_OWNED_BY_FROM_ADDRESS",
303 OwnersAndIdsMustHaveSameLength = "OWNERS_AND_IDS_MUST_HAVE_SAME_LENGTH",
304 TokenAndValuesLengthMismatch = "TOKEN_AND_VALUES_LENGTH_MISMATCH",
305 TriedToMintFungibleForNonFungibleToken = "TRIED_TO_MINT_FUNGIBLE_FOR_NON_FUNGIBLE_TOKEN",
306 TriedToMintNonFungibleForFungibleToken = "TRIED_TO_MINT_NON_FUNGIBLE_FOR_FUNGIBLE_TOKEN",
307 TransferRejected = "TRANSFER_REJECTED",
308 Uint256Underflow = "UINT256_UNDERFLOW",
309 InvalidIdsOffset = "INVALID_IDS_OFFSET",
310 InvalidValuesOffset = "INVALID_VALUES_OFFSET",
311 InvalidDataOffset = "INVALID_DATA_OFFSET",
312 InvalidAssetDataLength = "INVALID_ASSET_DATA_LENGTH",
313 InvalidStaticCallDataOffset = "INVALID_STATIC_CALL_DATA_OFFSET",
314 TargetNotEven = "TARGET_NOT_EVEN",
315 UnexpectedStaticCallResult = "UNEXPECTED_STATIC_CALL_RESULT",
316 TransfersSuccessful = "TRANSFERS_SUCCESSFUL",
317 InsufficientFunds = "INSUFFICIENT_FUNDS",
318 TxAlreadyExecuted = "TX_ALREADY_EXECUTED",
319 DefaultTimeLockIncomplete = "DEFAULT_TIME_LOCK_INCOMPLETE",
320 CustomTimeLockIncomplete = "CUSTOM_TIME_LOCK_INCOMPLETE",
321 EqualLengthsRequired = "EQUAL_LENGTHS_REQUIRED",
322 OnlyCallableByWallet = "ONLY_CALLABLE_BY_WALLET",
323 ChaiBridgeOnlyCallableByErc20BridgeProxy = "ChaiBridge/ONLY_CALLABLE_BY_ERC20_BRIDGE_PROXY",
324 ChaiBridgeDrawDaiFailed = "ChaiBridge/DRAW_DAI_FAILED",
325 DydxBridgeOnlyCallableByErc20BridgeProxy = "DydxBridge/ONLY_CALLABLE_BY_ERC20_BRIDGE_PROXY",
326 DydxBridgeUnrecognizedBridgeAction = "DydxBridge/UNRECOGNIZED_BRIDGE_ACTION"
327}
328export declare enum StatusCodes {
329 Success = 200,
330 NotFound = 404,
331 InternalError = 500,
332 MethodNotAllowed = 405,
333 GatewayTimeout = 504
334}
335export interface ObjectMap<T> {
336 [key: string]: T;
337}
338/**
339 * makerAssetData: Subscribes to new orders with the specified `makerAssetData`
340 * takerAssetData: subscribes to new orders with the specified `takerAssetData`
341 * traderAssetData: subscribes to new orders where either `makerAssetData` or `takerAssetData` has the value specified
342 * makerAssetProxyId: returns orders where the maker asset is of certain asset proxy id (example: `0xf47261b0` for ERC20, `0x02571792` for ERC721)
343 * takerAssetProxyId: returns orders where the taker asset is of certain asset proxy id(example: `0xf47261b0` for ERC20, `0x02571792` for ERC721)
344 * makerAssetAddress: subscribes to new orders where the contract address for the maker asset matches the value specified
345 * takerAssetAddress: subscribes to new orders where the contract address for the taker asset matches the value specified
346 */
347export interface OrdersChannelSubscriptionOpts {
348 makerAssetData?: string;
349 takerAssetData?: string;
350 traderAssetData?: string;
351 makerAssetProxyId?: string;
352 takerAssetProxyId?: string;
353 makerAssetAddress?: string;
354 takerAssetAddress?: string;
355}
356export declare type OrdersChannelMessage = UpdateOrdersChannelMessage | UnknownOrdersChannelMessage;
357export declare enum OrdersChannelMessageTypes {
358 Update = "update",
359 Unknown = "unknown"
360}
361export interface UpdateOrdersChannelMessage {
362 type: OrdersChannelMessageTypes.Update;
363 requestId: string;
364 payload: APIOrder[];
365}
366export interface UnknownOrdersChannelMessage {
367 type: OrdersChannelMessageTypes.Unknown;
368 requestId: string;
369 payload: undefined;
370}
371export declare enum WebsocketConnectionEventType {
372 Close = "close",
373 Error = "error",
374 Message = "message"
375}
376export declare enum WebsocketClientEventType {
377 Connect = "connect",
378 ConnectFailed = "connectFailed"
379}
380export declare type OrdersResponse = PaginatedCollection<APIOrder>;
381export interface APIOrder {
382 order: SignedOrder;
383 metaData: object;
384}
385export interface AssetPairsRequestOpts {
386 assetDataA?: string;
387 assetDataB?: string;
388}
389export declare type AssetPairsResponse = PaginatedCollection<AssetPairsItem>;
390export interface AssetPairsItem {
391 assetDataA: Asset;
392 assetDataB: Asset;
393}
394export interface Asset {
395 assetData: string;
396 minAmount: BigNumber;
397 maxAmount: BigNumber;
398 precision: number;
399}
400export interface OrdersRequestOpts {
401 makerAssetProxyId?: string;
402 takerAssetProxyId?: string;
403 makerAssetAddress?: string;
404 takerAssetAddress?: string;
405 exchangeAddress?: string;
406 senderAddress?: string;
407 makerAssetData?: string;
408 takerAssetData?: string;
409 makerFeeAssetData?: string;
410 takerFeeAssetData?: string;
411 makerAddress?: string;
412 takerAddress?: string;
413 traderAddress?: string;
414 feeRecipientAddress?: string;
415 unfillable?: boolean;
416}
417export interface OrderbookRequest {
418 baseAssetData: string;
419 quoteAssetData: string;
420}
421export interface OrderbookResponse {
422 bids: PaginatedCollection<APIOrder>;
423 asks: PaginatedCollection<APIOrder>;
424}
425export interface PaginatedCollection<T> {
426 total: number;
427 page: number;
428 perPage: number;
429 records: T[];
430}
431export interface OrderConfigRequest {
432 makerAddress: string;
433 takerAddress: string;
434 makerAssetAmount: BigNumber;
435 takerAssetAmount: BigNumber;
436 makerAssetData: string;
437 takerAssetData: string;
438 exchangeAddress: string;
439 expirationTimeSeconds: BigNumber;
440}
441export interface OrderConfigResponse {
442 makerFee: BigNumber;
443 takerFee: BigNumber;
444 feeRecipientAddress: string;
445 senderAddress: string;
446 makerFeeAssetData: string;
447 takerFeeAssetData: string;
448}
449export declare type FeeRecipientsResponse = PaginatedCollection<string>;
450export interface RequestOpts {
451 chainId?: number;
452}
453export interface PagedRequestOpts {
454 page?: number;
455 perPage?: number;
456}
457export interface TypeDocType {
458 type: TypeDocTypes;
459 value: string;
460 name: string;
461 types: TypeDocType[];
462 typeArguments?: TypeDocType[];
463 declaration: TypeDocNode;
464 elementType?: TypeDocType;
465 indexSignature?: TypeDocNode;
466 elements?: TupleElement[];
467}
468export interface TupleElement {
469 type: string;
470 name: string;
471}
472export interface TypeDocNode {
473 id?: number;
474 name?: string;
475 kind?: string;
476 defaultValue?: string;
477 kindString?: string;
478 type?: TypeDocType;
479 fileName?: string;
480 line?: number;
481 comment?: TypeDocNode;
482 text?: string;
483 shortText?: string;
484 returns?: string;
485 declaration: TypeDocNode;
486 flags?: TypeDocFlags;
487 indexSignature?: TypeDocNode;
488 signatures?: TypeDocNode[];
489 parameters?: TypeDocNode[];
490 typeParameter?: TypeDocNode[];
491 sources?: TypeDocNode[];
492 children?: TypeDocNode[];
493 groups?: TypeDocGroup[];
494}
495export interface TypeDocFlags {
496 isStatic?: boolean;
497 isOptional?: boolean;
498 isPublic?: boolean;
499 isExported?: boolean;
500}
501export interface TypeDocGroup {
502 title: string;
503 children: number[];
504}
505export declare enum TypeDocTypes {
506 Intrinsic = "intrinsic",
507 Reference = "reference",
508 Array = "array",
509 StringLiteral = "stringLiteral",
510 Reflection = "reflection",
511 Union = "union",
512 TypeParameter = "typeParameter",
513 Intersection = "intersection",
514 Tuple = "tuple",
515 Unknown = "unknown"
516}
517export interface CustomTypeChild {
518 name: string;
519 type?: Type;
520 defaultValue?: string;
521}
522export interface Event {
523 name: string;
524 eventArgs: EventArg[];
525}
526export interface EventArg {
527 isIndexed: boolean;
528 name: string;
529 type: Type;
530}
531export interface Property {
532 name: string;
533 type: Type;
534 source?: Source;
535 comment?: string;
536 callPath?: string;
537}
538export interface BaseMethod {
539 isConstructor: boolean;
540 name: string;
541 returnComment?: string | undefined;
542 callPath: string;
543 parameters: Parameter[];
544 returnType: Type;
545 comment?: string;
546}
547export interface BaseFunction {
548 name: string;
549 returnComment?: string | undefined;
550 parameters: Parameter[];
551 returnType: Type;
552 comment?: string;
553}
554export interface TypeDefinitionByName {
555 [typeName: string]: CustomType;
556}
557export interface DocAgnosticFormat {
558 [sectionName: string]: DocSection;
559}
560export interface DocSection {
561 comment: string;
562 constructors: Array<TypescriptMethod | SolidityMethod>;
563 methods: Array<TypescriptMethod | SolidityMethod>;
564 properties: Property[];
565 types: CustomType[];
566 functions: TypescriptFunction[];
567 events?: Event[];
568 externalExportToLink?: ExternalExportToLink;
569}
570export interface TypescriptMethod extends BaseMethod {
571 source?: Source;
572 isStatic?: boolean;
573 typeParameter?: TypeParameter;
574}
575export interface TypescriptFunction extends BaseFunction {
576 source?: Source;
577 typeParameter?: TypeParameter;
578 callPath: string;
579}
580export interface SolidityMethod extends BaseMethod {
581 isConstant?: boolean;
582 isPayable?: boolean;
583 isFallback?: boolean;
584}
585export interface Source {
586 fileName: string;
587 line: number;
588}
589export interface Parameter {
590 name: string;
591 comment: string;
592 isOptional: boolean;
593 type: Type;
594 defaultValue?: string;
595}
596export interface TypeParameter {
597 name: string;
598 type: Type;
599}
600export interface Type {
601 name: string;
602 typeDocType: TypeDocTypes;
603 value?: string;
604 isExportedClassReference?: boolean;
605 typeArguments?: Type[];
606 elementType?: ElementType;
607 types?: Type[];
608 method?: TypescriptMethod;
609 indexSignature?: IndexSignature;
610 externalLink?: string;
611 tupleElements?: Type[];
612}
613export interface ElementType {
614 name: string;
615 typeDocType: TypeDocTypes;
616}
617export interface IndexSignature {
618 keyName: string;
619 keyType: Type;
620 valueName: string;
621}
622export interface CustomType {
623 name: string;
624 kindString: string;
625 type?: Type;
626 method?: TypescriptMethod;
627 indexSignature?: IndexSignature;
628 defaultValue?: string;
629 comment?: string;
630 children?: CustomTypeChild[];
631}
632export interface GeneratedDocJson {
633 version: string;
634 metadata: Metadata;
635 typedocJson: TypeDocNode;
636}
637export interface ExportNameToTypedocNames {
638 [exportName: string]: string[];
639}
640export interface ExternalTypeToLink {
641 [externalTypeName: string]: string;
642}
643export interface ExternalExportToLink {
644 [externalExport: string]: string;
645}
646export interface Metadata {
647 exportPathToTypedocNames: ExportNameToTypedocNames;
648 exportPathOrder: string[];
649 externalTypeToLink: ExternalTypeToLink;
650 externalExportToLink: ExternalExportToLink;
651}
652export interface EIP712Parameter {
653 name: string;
654 type: string;
655}
656export interface EIP712Types {
657 [key: string]: EIP712Parameter[];
658}
659export declare type EIP712ObjectValue = string | number | EIP712Object;
660export interface EIP712Object {
661 [key: string]: EIP712ObjectValue;
662}
663export interface EIP712TypedData {
664 types: EIP712Types;
665 domain: EIP712Object;
666 message: EIP712Object;
667 primaryType: string;
668}
669export interface Stats {
670 orderCount: number;
671}
672export interface DutchAuctionDetails {
673 beginTimeSeconds: BigNumber;
674 endTimeSeconds: BigNumber;
675 beginAmount: BigNumber;
676 endAmount: BigNumber;
677 currentAmount: BigNumber;
678 currentTimeSeconds: BigNumber;
679}
680export interface PackageJSONConfig {
681 postpublish?: {
682 assets?: string[];
683 docOmitExports?: string[];
684 dockerHubRepo?: string;
685 };
686 'abis:comment'?: string;
687 abis?: string;
688 ignoreDependencyVersions?: string;
689 ignoreDependencyVersionsForPackage?: string;
690}
691export interface PackageJSON {
692 private?: boolean;
693 version: string;
694 name: string;
695 main?: string;
696 scripts?: {
697 [command: string]: string;
698 };
699 config?: PackageJSONConfig;
700 dependencies?: {
701 [dependencyName: string]: string;
702 };
703 devDependencies?: {
704 [dependencyName: string]: string;
705 };
706 workspaces?: string[];
707}
708export interface EIP712DomainWithDefaultSchema {
709 name?: string;
710 version?: string;
711 chainId: number;
712 verifyingContract: string;
713}
714export declare enum OrderStatus {
715 Invalid = 0,
716 InvalidMakerAssetAmount = 1,
717 InvalidTakerAssetAmount = 2,
718 Fillable = 3,
719 Expired = 4,
720 FullyFilled = 5,
721 Cancelled = 6
722}
723export declare enum OrderTransferResults {
724 TakerAssetDataFailed = 0,
725 MakerAssetDataFailed = 1,
726 TakerFeeAssetDataFailed = 2,
727 MakerFeeAssetDataFailed = 3,
728 TransfersSuccessful = 4
729}
730export interface FillResults {
731 makerAssetFilledAmount: BigNumber;
732 takerAssetFilledAmount: BigNumber;
733 makerFeePaid: BigNumber;
734 takerFeePaid: BigNumber;
735 protocolFeePaid: BigNumber;
736}
737export interface MatchedFillResults {
738 left: FillResults;
739 right: FillResults;
740 profitInLeftMakerAsset: BigNumber;
741 profitInRightMakerAsset: BigNumber;
742}
743export interface BatchMatchedFillResults {
744 left: FillResults[];
745 right: FillResults[];
746 profitInLeftMakerAsset: BigNumber;
747 profitInRightMakerAsset: BigNumber;
748}
749export interface OrderInfo {
750 orderStatus: number;
751 orderHash: string;
752 orderTakerAssetFilledAmount: BigNumber;
753}
754export interface DecodedLogEvent<ArgsType extends DecodedLogArgs> {
755 isRemoved: boolean;
756 log: LogWithDecodedArgs<ArgsType>;
757}
758export declare type EventCallback<ArgsType extends DecodedLogArgs> = (err: null | Error, log?: DecodedLogEvent<ArgsType>) => void;
759export interface IndexedFilterValues {
760 [index: string]: ContractEventArg;
761}
762export interface SimpleContractArtifact {
763 schemaVersion: string;
764 contractName: string;
765 compilerOutput: SimpleStandardContractOutput;
766 chains: ContractChains;
767}
768export interface SimpleStandardContractOutput {
769 abi: ContractAbi;
770 evm: SimpleEvmOutput;
771 devdoc?: DevdocOutput;
772}
773export interface SimpleEvmOutput {
774 bytecode: SimpleEvmBytecodeOutput;
775}
776export interface SimpleEvmBytecodeOutput {
777 object: string;
778}
779//# sourceMappingURL=index.d.ts.map
\No newline at end of file