import type { MultiFileDiffResult } from "../version-history/types";
/** Return value of {@link useSkillDiff}. */
export interface UseSkillDiffReturn {
    /** Multi-file diff result, or `null` while loading / on error / when disabled. */
    readonly diff: MultiFileDiffResult | null;
    /** `true` while both artifacts are being fetched, unpacked, and diffed. */
    readonly isLoading: boolean;
    /** Error from the fetch/unpack/diff, or `null` when healthy. */
    readonly error: Error | null;
}
/**
 * Data hook that fetches two skill version artifacts and computes a
 * multi-file diff between them.
 *
 * Takes two artifact storage keys (obtained from `useSkillVersions.getArtifactKey()`).
 * Fetches both ZIPs in parallel, unpacks them, and runs `computeMultiFileDiff`
 * on the extracted text file maps.
 *
 * Pass `null` for either key to disable fetching (stable no-op).
 *
 * @example
 * ```tsx
 * const { getArtifactKey } = useSkillVersions(org, slug);
 * const { diff, isLoading } = useSkillDiff(
 *   getArtifactKey(fromHash),
 *   getArtifactKey(toHash),
 * );
 * ```
 */
export declare function useSkillDiff(fromArtifactKey: string | null, toArtifactKey: string | null): UseSkillDiffReturn;
//# sourceMappingURL=useSkillDiff.d.ts.map