UNPKG

machinomy

Version:

Micropayments powered by Ethereum

44 lines (43 loc) 1.99 kB
import { RequestResponse } from 'request'; import Payment from './payment'; import { AcceptPaymentRequest } from './accept_payment_request'; import { AcceptPaymentResponse } from './accept_payment_response'; import { AcceptTokenRequest } from './accept_token_request'; import { AcceptTokenResponse } from './accept_token_response'; import { PaymentRequiredRequest } from './PaymentRequiredRequest'; import { PaymentRequiredResponse } from './PaymentRequiredResponse'; export declare const STATUS_CODES: { PAYMENT_REQUIRED: number; OK: number; }; export interface GetWithTokenCallbacks { onWillLoad?: Function; onDidLoad?: Function; } export interface RequestTokenOpts { onWillSendPayment?: Function; onDidSendPayment?: Function; } export declare class Transport { /** * Request URI sending a paywall token. * @return {Promise<object>} */ getWithToken(uri: string, token: string, opts?: GetWithTokenCallbacks): Promise<RequestResponse>; get(uri: string, headers?: object): Promise<RequestResponse>; /** * Request token from the server's gateway * @param {string} uri - Full url to the gateway. * @param {Payment} payment * @param {{uri: string, headers: object, onWillPreflight: function, onDidPreflight: function, onWillOpenChannel: function, onDidOpenChannel: function, onWillSendPayment: function, onDidSendPayment: function, onWillLoad: function, onDidLoad: function}} opts * @return {Promise<string>} */ requestToken(uri: string, payment: Payment, opts?: RequestTokenOpts): Promise<string>; doPayment(paymentRequest: AcceptPaymentRequest, gateway: string): Promise<AcceptPaymentResponse>; doVerify(tokenRequest: AcceptTokenRequest, gateway: string): Promise<AcceptTokenResponse>; paymentRequired(paymentRequiredRequest: PaymentRequiredRequest, gateway: string): Promise<PaymentRequiredResponse>; } /** * Build Transport instance. */ export declare const build: () => Transport;