import type { AppRouteObject } from "@keycloakify/keycloak-admin-ui/routes";
import { AddClientRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/AddClient";
import {
  AddRegistrationProviderRoute,
  EditRegistrationProviderRoute,
} from "@keycloakify/keycloak-admin-ui/clients/routes/AddRegistrationProvider";
import { AuthorizationRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/AuthenticationTab";
import { ClientRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/Client";
import { ClientRegistrationRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/ClientRegistration";
import { ClientRoleRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/ClientRole";
import { ClientsRoute, ClientsRouteWithTab } from "@keycloakify/keycloak-admin-ui/clients/routes/Clients";
import { ClientScopesRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/ClientScopeTab";
import { CreateInitialAccessTokenRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/CreateInitialAccessToken";
import {
  DedicatedScopeDetailsRoute,
  DedicatedScopeDetailsWithTabRoute,
} from "@keycloakify/keycloak-admin-ui/clients/routes/DedicatedScopeDetails";
import { ImportClientRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/ImportClient";
import { MapperRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/Mapper";
import {
  NewPermissionRoute,
  NewPermissionWithSelectedIdRoute,
} from "@keycloakify/keycloak-admin-ui/clients/routes/NewPermission";
import { NewPolicyRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/NewPolicy";
import { NewResourceRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/NewResource";
import { NewRoleRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/NewRole";
import { NewScopeRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/NewScope";
import { PermissionDetailsRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/PermissionDetails";
import { PolicyDetailsRoute } from "@keycloakify/keycloak-admin-ui/clients/routes/PolicyDetails";
import {
  ResourceDetailsRoute,
  ResourceDetailsWithResourceIdRoute,
} from "@keycloakify/keycloak-admin-ui/clients/routes/Resource";
import {
  ScopeDetailsRoute,
  ScopeDetailsWithScopeIdRoute,
} from "@keycloakify/keycloak-admin-ui/clients/routes/Scope";

const routes: AppRouteObject[] = [
  ClientRegistrationRoute,
  AddRegistrationProviderRoute,
  EditRegistrationProviderRoute,
  AddClientRoute,
  ImportClientRoute,
  ClientsRoute,
  ClientsRouteWithTab,
  CreateInitialAccessTokenRoute,
  ClientRoute,
  MapperRoute,
  DedicatedScopeDetailsRoute,
  DedicatedScopeDetailsWithTabRoute,
  ClientScopesRoute,
  ClientRoleRoute,
  AuthorizationRoute,
  NewResourceRoute,
  ResourceDetailsRoute,
  ResourceDetailsWithResourceIdRoute,
  NewRoleRoute,
  NewScopeRoute,
  ScopeDetailsRoute,
  ScopeDetailsWithScopeIdRoute,
  NewPolicyRoute,
  PolicyDetailsRoute,
  NewPermissionRoute,
  NewPermissionWithSelectedIdRoute,
  PermissionDetailsRoute,
];

export default routes;
