/*
 * Copyright (C) Sapphirecode - All Rights Reserved
 * This file is part of Auth-Server-Helper which is released under MIT.
 * See file 'LICENSE' for full license details.
 * Created by Timo Hocker <timo@scode.ovh>, January 2021
 */

/* eslint-disable import/no-namespace */
import create_auth_handler, {
  AccessResponse,
  CreateHandlerOptions,
  AuthRequestHandler,
  AuthRequest,
  AccessSettings,
  AccessResult
} from './AuthHandler';
import authority, {
  VerificationResult,
  TokenType,
  SignatureResult,
  SignatureOptions,
  Authority
} from './Authority';
import blacklist, { Blacklist } from './Blacklist';
import create_gateway, {
  GatewayOptions,
  GatewayClass,
  Gateway,
  AnyFunc
} from './Gateway';
import keystore, {
  KeyStore, KeyStoreExport,
  LabelledKey, Key
} from './KeyStore';

export {
  create_gateway,
  create_auth_handler,
  blacklist,
  authority,
  keystore,

  AccessResponse,
  CreateHandlerOptions,
  AuthRequestHandler,
  AuthRequest,
  AccessSettings,
  AccessResult,
  VerificationResult,
  TokenType,
  SignatureResult,
  SignatureOptions,
  Authority,
  Blacklist,
  GatewayOptions,
  GatewayClass,
  Gateway,
  AnyFunc,
  KeyStore,
  KeyStoreExport,
  LabelledKey,
  Key
};