import { IUserProfileDataModel } from './user.model';
import { IVersionModel } from './version.model';
import { IFeatureModel } from './feature.model';
import { ISaml2IdentityProviderModel } from '@fleio-api/core/model/saml2-identity-provider.model';

export interface IUserDataModel {
  remember_sfa_token: boolean;
  sfa_methods: [];
  sfa_required: boolean;
  user: IUserProfileDataModel;
  features: IFeatureModel;
  formatting: {
    currency: {
      display_mode: string;
      min_fraction_digits: string;
    };
    date: {
      date_format: string;
      date_time_format: string;
    };
  };
  referrals_enabled: boolean;
  has_panel_notifications: boolean;
  notifications: number;
  cart_items: number;
  total_notifications: number;
  version: IVersionModel;
  is_white_label: boolean;
  is_development: boolean;
  edition: string;
  impersonated?: boolean;
  requires_email_verification?: boolean;
  requires_tos_agreement?: boolean;
  enable_saml2_single_sign_on: boolean;
  disable_fleio_authentication: boolean;
  saml2_identity_providers: ISaml2IdentityProviderModel[];
  saml2_login_url: string;
}
