export type { AuthClient, SignUpInput } from './client.js'
export {
  AuthSessionExpiredError,
  AuthProviderError,
  isAuthSessionExpiredError,
  isAuthProviderError,
} from './errors.js'
export { AuthProvider } from './AuthProvider.js'
export { useCurrentUser } from './useCurrentUser.js'
export { useSignIn } from './useSignIn.js'
export { useSignUp } from './useSignUp.js'
export { useSignOut } from './useSignOut.js'
export { usePasswordReset } from './usePasswordReset.js'
export { RequireRole, type RequireRoleProps } from './RequireRole.js'
export { RequireCapability, type RequireCapabilityProps } from './RequireCapability.js'

export type { Principal, SignInCredentials } from '@platform-modules/auth'
