import { Currency } from "isoly";
import * as langly from "langly";
import { Customer, Merchant, Order, Settlement, User } from "@payfunc/model";
import { Client } from "@payfunc/merchant-client";
export declare class PayfuncPortal {
  server?: string;
  element: HTMLElement;
  t: langly.Translate;
  deferAllowed: boolean;
  hasCustomers: boolean;
  hasSettlements: boolean;
  default: "order" | "defer";
  emailOption: boolean;
  currency?: Currency;
  orders?: Order[];
  customers?: Customer[];
  customerOrders: {
    [id: string]: Order[] | undefined;
  } | undefined;
  merchant: Merchant | undefined;
  settlements: Settlement[];
  interchange?: true;
  user?: User;
  static client?: Pick<Client, "order" | "me" | "customer">;
  componentWillLoad(): Promise<void>;
  handleOnUserChanged(e?: CustomEvent<{
    user: User;
  }>): Promise<void>;
  loadData(): void;
  private updateMerchant;
  handleTrigger(event: CustomEvent<{
    name: string;
  }>): Promise<void>;
  handleUpdateOrder(event?: CustomEvent): Promise<void>;
  loadCustomers(event?: CustomEvent): Promise<void>;
  handleMenuClose(e: CustomEvent<{
    name: string;
    value: string;
    description: string;
  }>): Promise<void>;
  onSelectionChanged(e: CustomEvent<{
    identifier: string;
    value: string;
  }>): Promise<void>;
  render(): any;
  whitelist(): boolean;
}
