/**
* hyper-identity — Generic P2P identity management
*
* Provides multi-method authentication (ANProto, BIP39 mnemonic, bearer tokens, SSH keys),
* Autobase-backed identity registry, device linking, and encrypted storage.
*
* Extracted from pear-git's battle-tested identity backend, genericized
* with injectable permission model (resources instead of repos/notebooks).
*/
// Core authentication
export { AuthManager, Permissions, sendAuthError } from './lib/auth.js'
// ANProto protocol
export { ANProto } from './lib/anproto.js'
// Identity management
export { IdentityManager } from './lib/identity-manager.js'
export { DeviceLinker } from './lib/device-linker.js'
export { SecureStorage } from './lib/secure-storage.js'
// Autobase identity registry
export { IdentityRegistry } from './lib/auth/identity-registry.js'
export { createApplyFunction } from './lib/auth/identity-apply.js'
export { OpTypes, encodeOp, decodeOp, validateOp } from './lib/auth/identity-operations.js'
// Auth providers
export { BaseProvider } from './lib/auth/base-provider.js'
export { WebIdentityProvider } from './lib/auth/providers/web-identity.js'
export { KeetIdentityProvider } from './lib/auth/providers/keet-identity.js'
export { BearerTokenProvider } from './lib/auth/providers/bearer-token.js'
export { SSHKeyProvider } from './lib/auth/providers/ssh-key.js'
export { AtprotoProvider } from './lib/auth/providers/atproto.js'
// Auth helpers
export { ChallengeManager } from './lib/auth/challenge-manager.js'
export { RateLimiter } from './lib/auth/rate-limiter.js'
export { SSHKeyParser } from './lib/auth/ssh-parser.js'
// Hyperident master-vault bridge — load master, attest local writer
// devices, verify chains against the local master, export/import or
// network-share the master vault between machines.
export {
loadHyperidentMaster,
attestLocalDevice,
verifyChainAgainstLocalMaster,
exportMasterBundle,
importMasterBundle,
shareMasterVault,
joinSharedDevice
} from './lib/hyperident-vault.js'