UNPKG

@baking-bad/tezos-etherlink-bridge-sdk

Version:

SDK designed for building token bridge applications between Tezos (L1) and Etherlink (L2)

112 lines (111 loc) 3.05 kB
export type BridgeOperationCommonStatus = 'CREATED' | 'SEALED' | 'FINISHED' | 'FAILED'; export type BridgeOperationFailedStatus = 'FAILED_INVALID_ROUTING_INFO_REVERTABLE' | 'FAILED_INVALID_ROUTING_PROXY_NOT_WHITELISTED' | 'FAILED_INVALID_ROUTING_PROXY_EMPTY_PROXY' | 'FAILED_INVALID_ROUTING_INVALID_PROXY_ADDRESS' | 'FAILED_OUTBOX_EXPIRED' | 'FAILED_INBOX_MATCHING_TIMEOUT'; export type BridgeOperationStatus = BridgeOperationCommonStatus | BridgeOperationFailedStatus; export interface TezosTokenDto { type: string; contract_address: string; token_id: string; } interface InboxMessageDto { type: string; level: number; index: number; } interface OutboxMessageDto { level: number; index: number; commitment: { hash: string; } | null; proof: string | null; cemented_at: string; cemented_level: number; } interface TezosTicketDto { token: TezosTokenDto; } interface DepositL1TransactionDto { level: number; operation_hash: string; counter: number; nonce: number | null; amount: string; ticket: TezosTicketDto; l1_account: string; l2_account: string; timestamp: string; } interface DepositL2TransactionDto { level: number; transaction_hash: string; log_index: number; amount: string; l2_token: { id: string; }; timestamp: string; } export interface BridgeDepositDto { l1_transaction: DepositL1TransactionDto; l2_transaction: DepositL2TransactionDto | null; inbox_message: InboxMessageDto | null; } interface WithdrawalL1TransactionDto { level: number; operation_hash: string; counter: number; nonce: number | null; timestamp: string; outbox_message: OutboxMessageDto; } interface WithdrawalL2TransactionDto { level: number; transaction_hash: string; log_index: number; amount: string; l2_token: { id: string; ticket: TezosTicketDto; }; l1_account: string; l2_account: string; timestamp: string; } export interface BridgeWithdrawalDto { l1_transaction: WithdrawalL1TransactionDto | null; l2_transaction: WithdrawalL2TransactionDto; outbox_message: OutboxMessageDto | null; } export interface BridgeOperationDto { type: 'deposit' | 'withdrawal'; status: BridgeOperationStatus; is_completed: boolean; is_successful: boolean; created_at: string; updated_at: string; deposit: BridgeDepositDto | null; withdrawal: BridgeWithdrawalDto | null; } export interface BridgeOperationsDto { bridge_operation: BridgeOperationDto[]; bridge_operation_stream: never; } export interface BridgeOperationsStreamDto { bridge_operation: never; bridge_operation_stream: BridgeOperationDto[]; } export interface TokenBalancesDto { l2_token_holder: Array<{ balance: number; holder: string; token: string; }>; } export interface GraphQLError { message: string; } export interface GraphQLResponse<TData> { data: TData; errors?: GraphQLError[]; } export {};