/// <reference types="node" />
import * as gracely from "gracely";
import { Currency } from "isoly";
import { Merchant } from "@payfunc/model-acquirer";
import { Log } from "@payfunc/model-log";
import { Client } from "@payfunc/merchant-client";
import { AcquirerSettlement } from "./model";
import { ModelState } from "./model";
export declare abstract class Handler {
  private static client?;
  private static states?;
  private static logs?;
  private static merchants?;
  private static settlements?;
  private static conversion?;
  static timer?: NodeJS.Timeout;
  private static downloading;
  private static readonly callbacks;
  static register(callback: (authorizations: (ModelState.Authorization | ModelState.FailedAuthorization)[] | undefined, logs: Promise<Log[] | gracely.Error | string> | undefined, merchants: Merchant[] | undefined, settlements: AcquirerSettlement[] | undefined, conversion?: Partial<Record<Currency, Partial<Record<Currency, number>>>>) => any, type?: "developer" | "test" | "live" | "demo", client?: Pick<Client, "authorization" | "log" | "me" | "merchant" | "settlement">): void;
  static download(type?: "developer" | "test" | "live" | "demo"): Promise<void>;
}
