import { EBiometricsError, EBiometricsParams, EBiometricsResponse } from '.';

export enum EBiometricsEnvironment {
  development = 'development',
  production = 'production',
}

export enum EBiometricsTheme {
  light = 'light',
  dark = 'dark',
}

export enum EBiometricsProvider {
  idemia = 'idemia',
  softcol = 'softcol',
}

export enum EBiometricsQueue {
  simple = 'simple',
  extended = 'extended',
}

export interface EBiometricsInput {
  target: string;
  account: string;
  params: EBiometricsParams;
  environment?: EBiometricsEnvironment;
  theme?: EBiometricsTheme;
  provider?: EBiometricsProvider;
  queue?: EBiometricsQueue;
  extraInfo?: string;
  onError?: (error: EBiometricsError) => any | undefined;
  onSuccess?: (data: EBiometricsResponse) => any | undefined;
  onRetry?: () => any | undefined;
}
