UNPKG

@citizenwallet/sdk

Version:

An sdk to easily work with citizen wallet.

65 lines 2.22 kB
import type { CommunityConfig } from "../index"; import { ERC20TransferLogData } from "./transfer"; import { MessageExtraData } from "./extra"; export interface Log<D = LogData, E = unknown> { hash: string; tx_hash: string; created_at: string; updated_at: string; nonce: number; sender: string; to: string; value: string; data: D | null; extra_data: E | null; status: LogStatus; } export type ERC20TransferLog = Log<ERC20TransferLogData, MessageExtraData | null>; export declare enum LogStatus { Unknown = "", Sending = "sending", Pending = "pending", Success = "success", Fail = "fail" } export interface ResponsePaginationMetadata { limit: number; offset: number; total: number; } export interface ObjectResponse<T, M> { object: T; meta: M; } export interface ArrayResponse<T, M> { array: T[]; meta: M; } export interface PaginationParams { limit: number; offset: number; } export interface LogData { [key: string]: string; } export interface LogQueryParams { maxDate: string; data?: LogData; orData?: LogData; } export interface NewLogQueryParams { fromDate: string; data?: LogData; orData?: LogData; } export declare function logDataToQueryString(data: LogData, prefix?: string): string; export declare class LogsService<D = LogData, E = unknown> { private url; constructor(config: CommunityConfig); getLog(tokenAddress: string, hash: string): Promise<ObjectResponse<Log<D, E>, undefined>>; getLogs(tokenAddress: string, topic: string, params?: PaginationParams & LogQueryParams): Promise<ArrayResponse<Log<D, E>, ResponsePaginationMetadata>>; getAllLogs(tokenAddress: string, topic: string, params?: PaginationParams & LogQueryParams): Promise<ArrayResponse<Log<D, E>, ResponsePaginationMetadata>>; getNewLogs(tokenAddress: string, topic: string, params?: PaginationParams & NewLogQueryParams): Promise<ArrayResponse<Log<D, E>, ResponsePaginationMetadata>>; getAllNewLogs(tokenAddress: string, topic: string, params?: PaginationParams & NewLogQueryParams): Promise<ArrayResponse<Log<D, E>, ResponsePaginationMetadata>>; } //# sourceMappingURL=index.d.ts.map