// AUTO-GENERATED by django_generator / ts_extras.wrapper
// Top-level barrel — global `auth` + per-group facades.
// DO NOT EDIT — re-run `make gen`.

// Side-effect: ensure auth interceptor is installed even if consumers
// only ever import this barrel (it'll also load via client.gen.ts).
import './helpers/auth';

// Global auth/config store — single source of truth.
export { auth, type Auth } from './helpers/auth';

import { API as CfgAccountsAPI } from './_cfg_accounts';
import { API as CfgCentrifugoAPI } from './_cfg_centrifugo';
import { API as CfgTotpAPI } from './_cfg_totp';

// Singletons for ergonomic access (`import { apiAccounts } from '@your/api'`).
// All instances share the same global `auth` store.
export const CfgAccountsApi = new CfgAccountsAPI();
export const CfgCentrifugoApi = new CfgCentrifugoAPI();
export const CfgTotpApi = new CfgTotpAPI();

// Per-group wrapper classes (e.g. for tests / SSR isolation of options).
export { API as CfgAccountsAPI } from './_cfg_accounts';
export { API as CfgCentrifugoAPI } from './_cfg_centrifugo';
export { API as CfgTotpAPI } from './_cfg_totp';

// Hey API SDK classes — one per OpenAPI tag. Lets consumers call
// `Centrifugo.cfgCentrifugoAuthTokenRetrieve({...})` directly.
//
// NOTE: classes whose name would collide with a barrel-level type
// alias (e.g. `Auth`, which is also `type Auth = typeof auth`) are
// re-exported under a `*SDK` suffix here. The original name is still
// available via the per-group import: `import { Auth } from
// '<api>/_auth'`. To remove the alias, rename the OpenAPI tag on the
// backend so the SDK class doesn't collide.
export { CfgAccountsApiKey, CfgAccountsOauth, CfgAccounts, CfgAccountsProfile, CfgAccountsAuth } from './_cfg_accounts';
export { CfgCentrifugo } from './_cfg_centrifugo';
export { CfgTotpBackupCodes, CfgTotp, CfgTotpSetup, CfgTotpVerify } from './_cfg_totp';

// Generated DTO / schema types (Hey API). The per-group barrels each
// re-export these too; surfacing them at the top level lets consumers
// `import { FleetSummary } from '<api>'` without reaching into a
// group subpath.
export type * from './types.gen';

// Shared utilities (errors, storage adapters, logger).
export * from './helpers';
