import { DecimalSeparatorType, ExportExtensionType, SettingsModel } from "../_models/settings.model";
import { SettingsService } from "../_services/settings.service";
import { OktaService } from "../_services/okta.service";
import { OktaUserModel } from "../_models/okta.model";
import { BaseComponent } from "../base/base.component";
import { ThemeService } from "../_services/theme.service";
import { FormControl, FormGroup } from "@angular/forms";
import * as i0 from "@angular/core";
declare class SettingsFormModel {
    dark: FormControl<boolean>;
    decimalSeparator: FormControl<DecimalSeparatorType>;
    exportExtension: FormControl<ExportExtensionType>;
    constructor(settings: SettingsModel);
}
/**
 * Settings component that you can simply inject in an otherwise empty 'settings' screen.
 * To let the user choose some basic preferences like dark or light theme.
 * The component uses content projection to allow you to add any app-specific settings you want to persist.
 */
export declare class SettingsComponent extends BaseComponent {
    private oktaService;
    private settingsService;
    private themeService;
    settingTitle: string;
    darkModeButtonTitle: string;
    darkModeHintText: string;
    exportDescriptionText: string;
    excelExportRadioText: string;
    csvExportRadioText: string;
    decimalSeparatorText: string;
    dotRadioText: string;
    commaRadioText: string;
    user: OktaUserModel;
    settings: SettingsModel;
    settingsForm: FormGroup<SettingsFormModel>;
    constructor(oktaService: OktaService, settingsService: SettingsService, themeService: ThemeService);
    private onNewUser;
    onToggleTheme(): void;
    updateSettings(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<SettingsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SettingsComponent, "spaas-settings", never, { "settingTitle": { "alias": "settingTitle"; "required": false; }; "darkModeButtonTitle": { "alias": "darkModeButtonTitle"; "required": false; }; "darkModeHintText": { "alias": "darkModeHintText"; "required": false; }; "exportDescriptionText": { "alias": "exportDescriptionText"; "required": false; }; "excelExportRadioText": { "alias": "excelExportRadioText"; "required": false; }; "csvExportRadioText": { "alias": "csvExportRadioText"; "required": false; }; "decimalSeparatorText": { "alias": "decimalSeparatorText"; "required": false; }; "dotRadioText": { "alias": "dotRadioText"; "required": false; }; "commaRadioText": { "alias": "commaRadioText"; "required": false; }; }, {}, never, ["*"], false, never>;
}
export {};
