# Extensions Module
# Provides extension system functionality

# extensions/ subsystem facade — selective re-exports (ADR-025 Phase 3 Layer 3).

export use loader.nu [
    check-requirements discover-providers discover-taskservs
    get-extension-paths is-extension-allowed load-hooks load-manifest
]
export use registry.nu [
    execute-hooks get-default-registry get-provider get-taskserv
    get-taskserv-path init-registry list-providers list-taskservs
    load-registry provider-exists save-registry taskserv-exists
]
export use profiles.nu [
    create-example-profiles enforce-profile is-command-allowed
    is-provider-allowed is-taskserv-allowed load-profile show-profile
]
export use loader_oci.nu [load-extension]
export use cache.nu [
    hetzner_cache_age hetzner_cache_valid hetzner_clean_all_cache
    hetzner_clean_cache hetzner_create_cache hetzner_ip_from_cache
    hetzner_read_cache hetzner_start_cache_info hetzner_update_cache
]
export use versions.nu [
    compare-semver get-latest-version is-semver resolve-gitea-version
    resolve-oci-version resolve-version satisfies-constraint sort-by-semver
]
export use discovery.nu [
    discover-all-extensions discover-local-extensions discover-oci-extensions
    get-extension-versions get-oci-extension-metadata list-extensions
    search-extensions search-oci-extensions
]
export use commands.nu [
    "ext cache clear" "ext cache list" "ext cache prune" "ext cache stats"
    "ext discover" "ext info" "ext list" "ext load" "ext publish"
    "ext pull" "ext search" "ext test-oci" "ext versions"
]
