import { AlertProps } from '@mui/material'; import { DetailedNotificationProfile, Device, NotificationProfile, SettingsCopy, TransactionRule, User, UserCommunicationProfile } from '../types'; import { SettingsApi, TransactionApi } from '../api'; import { GlobalStore } from './GlobalStore'; interface SettingsAlertProps { message: string; severity: AlertProps['severity']; } export declare class SettingsStore { globalStore: GlobalStore; api: SettingsApi; transactionApi: TransactionApi; alert: SettingsAlertProps; devices: Device[]; notificationProfiles: NotificationProfile[]; selectedRule: TransactionRule | undefined; transactionRules: TransactionRule[]; constructor(globalStore: GlobalStore); get accountProfiles(): DetailedNotificationProfile[]; get budgetProfiles(): DetailedNotificationProfile[]; get insightsProfiles(): DetailedNotificationProfile[]; get clientCommunicationProfile(): import('..').ClientCommunicationProfile; get copy(): SettingsCopy; get detailedNotificationProfiles(): DetailedNotificationProfile[]; get userCommunicationsProfile(): UserCommunicationProfile; deleteDevice: (guid: string) => Promise<{ success: boolean; }>; deleteTransactionRule: () => Promise; generateDeviceToken: () => Promise; loadDevices: () => Promise; loadNotificationProfiles: () => Promise; loadTransactionRules: () => Promise; sendEmailVerification: () => Promise; sendPhoneVerification: () => Promise; setAlert: (message: string, severity?: SettingsAlertProps["severity"]) => { message: string; severity: import('@mui/types').OverridableStringUnion | undefined; }; setSelectedRule: (rule?: TransactionRule) => void; updatePassword: (params: { new_password: string; new_password_again: string; }) => Promise; updateDevice: (device: Device) => Promise<{ success: boolean; }>; updateNotificationProfile: (profile: NotificationProfile) => Promise; updateRuleCategory: (rule: TransactionRule) => Promise; updateRulePayee: (rule: TransactionRule) => Promise; updateUser: (user: User) => Promise; updateUserCommunicationProfile: (profile: UserCommunicationProfile) => Promise; verifyPhoneToken: (sms_verification_token: string) => Promise; } export {};