import { EventEmitter } from '@angular/core';
import { MatSnackBar } from '@angular/material/snack-bar';
import { EnvironmentService } from '@aztrix/environment';
import { MatomoService, TranslateService } from '@aztrix/helpers';
import { SettingsService, StripePaymentMethodRepresentation, TierSubscriptionRepresentation, TierSubscriptionsService } from '@aztrix/sdk';
import { BehaviorSubject } from 'rxjs';
import { TierInfoService } from '../tier-info.service';
import * as i0 from "@angular/core";
export declare class TierPaymentStepperComponent {
    private _tiersSubscriptionService;
    private _tierInfoService;
    private _settingsService;
    private _snackbar;
    private _translate;
    private _environment;
    private _matomo;
    newTierSubscription: TierSubscriptionRepresentation;
    mode: 'billing' | 'pay';
    returnUrl: string;
    done: EventEmitter<void>;
    TierEnum: {
        FREE: TierSubscriptionRepresentation.TierEnum;
        BASIC: TierSubscriptionRepresentation.TierEnum;
        PRO: TierSubscriptionRepresentation.TierEnum;
        ENTERPRISE: TierSubscriptionRepresentation.TierEnum;
    };
    loading$: BehaviorSubject<boolean>;
    constructor(_tiersSubscriptionService: TierSubscriptionsService, _tierInfoService: TierInfoService, _settingsService: SettingsService, _snackbar: MatSnackBar, _translate: TranslateService, _environment: EnvironmentService, _matomo: MatomoService);
    createTierSubscription({ paymentMethod, promoCode, }: {
        paymentMethod: StripePaymentMethodRepresentation;
        promoCode: string;
    }): void;
    cancelTierSubscription(): void;
    private _updateTiers$;
    private _updateTiersAfterPayment$;
    static ɵfac: i0.ɵɵFactoryDeclaration<TierPaymentStepperComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TierPaymentStepperComponent, "ax-tier-payment-stepper", never, { "newTierSubscription": { "alias": "newTierSubscription"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "returnUrl": { "alias": "returnUrl"; "required": false; }; }, { "done": "done"; }, never, never, true, never>;
}
