import * as Effect from "effect/Effect"; import * as HttpClient from "effect/unstable/http/HttpClient"; import { type AppError } from "../app-error/index.js"; import { RegistryUrl } from "../auth/index.js"; import { type RegistryRequestPolicy } from "./request-policy.js"; import * as GeneratedRegistryClient from "./__generated__/registry-client.js"; import type { DeprecationReplacementIntent, DeprecationView } from "./schema.js"; export interface RegistryExtensionReference { readonly owner: string; readonly type: string; readonly name: string; } export interface RegistryExtensionVersionReference extends RegistryExtensionReference { readonly version: string; } export type YankCategory = "broken" | "security" | "accidental" | "other"; export interface RegistryLifecycleCallOptions { readonly stepUpRequestId?: string; readonly requestPolicy?: RegistryRequestPolicy; } export interface PutExtensionDeprecationInput { readonly revision: string; readonly message: string | null; readonly replacement: DeprecationReplacementIntent; } export declare const normalizeRegistryDeprecation: (value: GeneratedRegistryClient.DeprecationView | null) => Effect.Effect; export declare const yankExtensionVersion: (ref: RegistryExtensionVersionReference, input: { readonly category?: YankCategory; readonly notice?: string; }, options?: RegistryLifecycleCallOptions) => Effect.Effect<{ readonly owner: string; readonly type: "skill" | "mcp-server" | "subagent" | "rule" | "hook" | "knowledge" | "pack"; readonly name: string; readonly version: string; readonly yankedAt: import("effect/DateTime").Utc | null; readonly yankCategory: string | null; readonly yankNotice: string | null; readonly links: { readonly html: string; }; }, AppError, HttpClient.HttpClient | RegistryUrl>; export declare const yankAvailableExtensionVersions: (ref: RegistryExtensionReference, input: { readonly category?: YankCategory; readonly notice?: string; }, options?: RegistryLifecycleCallOptions) => Effect.Effect<{ readonly selection: "all-available"; readonly affectedVersions: readonly string[]; readonly futureVersionsAffected: false; }, AppError, HttpClient.HttpClient | RegistryUrl>; export declare const unyankExtensionVersion: (ref: RegistryExtensionVersionReference, options?: RegistryLifecycleCallOptions) => Effect.Effect<{ readonly owner: string; readonly type: "skill" | "mcp-server" | "subagent" | "rule" | "hook" | "knowledge" | "pack"; readonly name: string; readonly version: string; readonly yankedAt: null; readonly yankCategory: null; readonly yankNotice: null; readonly links: { readonly html: string; }; }, AppError, HttpClient.HttpClient | RegistryUrl>; export declare const getExtensionDeprecation: (ref: RegistryExtensionReference) => Effect.Effect<{ deprecation: { readonly message: string; readonly deprecatedAt: import("effect/DateTime").Utc; readonly replacement?: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; } | undefined; } | { readonly replacement: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; }; readonly deprecatedAt: import("effect/DateTime").Utc; readonly message?: string | undefined; } | null; revision: string; }, AppError, HttpClient.HttpClient | RegistryUrl>; export declare const deprecateExtension: (ref: RegistryExtensionReference, input: PutExtensionDeprecationInput) => Effect.Effect<{ target: string; before: { readonly message: string; readonly deprecatedAt: import("effect/DateTime").Utc; readonly replacement?: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; } | undefined; } | { readonly replacement: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; }; readonly deprecatedAt: import("effect/DateTime").Utc; readonly message?: string | undefined; } | null; after: { readonly message: string; readonly deprecatedAt: import("effect/DateTime").Utc; readonly replacement?: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; } | undefined; } | { readonly replacement: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; }; readonly deprecatedAt: import("effect/DateTime").Utc; readonly message?: string | undefined; } | null; disposition: "created" | "edited" | "restored" | "unchanged"; revision: string; }, AppError, HttpClient.HttpClient | RegistryUrl>; export declare const undeprecateExtension: (ref: RegistryExtensionReference, revision: string) => Effect.Effect<{ target: string; before: { readonly message: string; readonly deprecatedAt: import("effect/DateTime").Utc; readonly replacement?: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; } | undefined; } | { readonly replacement: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; }; readonly deprecatedAt: import("effect/DateTime").Utc; readonly message?: string | undefined; } | null; after: { readonly message: string; readonly deprecatedAt: import("effect/DateTime").Utc; readonly replacement?: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; } | undefined; } | { readonly replacement: { readonly status: "available"; readonly fqn: string; } | { readonly status: "unavailable"; readonly fqn?: string | undefined; }; readonly deprecatedAt: import("effect/DateTime").Utc; readonly message?: string | undefined; } | null; disposition: "created" | "edited" | "restored" | "unchanged"; revision: string; }, AppError, HttpClient.HttpClient | RegistryUrl>; //# sourceMappingURL=admin-client.d.ts.map