export declare enum CurrencyCodes {
    BGN,
    BRL,
    CHF,
    CLP,
    CZK,
    DKK,
    EUR,
    GBP,
    HUF,
    NOK,
    PLN,
    RON,
    SEK,
    USD
}
interface LoginResult {
    isLoggedIn: boolean;
}
interface SumUpResult {
    success: boolean;
}
export interface CheckoutResult extends SumUpResult {
    resultCode: number;
    message: string;
    transactionCode: string;
    cardType: string;
    cardLast4Digits: string;
    installments: number;
    additionalInfo: any;
}
declare class SumUpSDK {
    private static _apiKey;
    static init(key: string): void;
    get apiKey(): string;
    authenticate(): Promise<SumUpResult>;
    authenticateWithToken(token: any): Promise<SumUpResult>;
    isLoggedIn(): Promise<LoginResult>;
    logout(): Promise<boolean>;
    prepareForCheckout(): Promise<boolean>;
    checkout(title: string, totalAmount: number, currencyCode?: CurrencyCodes, foreignTransactionId?: string, token?: string): Promise<CheckoutResult>;
    preferences(): Promise<SumUpResult>;
}
export default SumUpSDK;
