export { RESOURCE_PACK_MAX_BODY_BYTES, RESOURCE_PACK_MAX_BYTES, RESOURCE_PACK_MAX_FILES, RESOURCE_PACK_MAX_REDACTIONS, RESOURCE_PACK_MAX_SOURCE_FILE_BYTES, } from "./pack-constants.js"; export declare const RESOURCE_PACK_VERSION = 1; export type ResourcePackScope = "personal" | "organization" | "workspace"; export type ResourcePackRedactionReason = "secret" | "binary" | "unreadable"; export interface ResourcePackResource { path: string; scope: ResourcePackScope; content: string; sha256: string; } export interface ResourcePackRedaction { path: string; reason: ResourcePackRedactionReason; } export interface ResourcePack { version: typeof RESOURCE_PACK_VERSION; exportedAt: number; source: { appId?: string; scope: ResourcePackScope; }; resources: ResourcePackResource[]; redactions: ResourcePackRedaction[]; checksum: string; } export interface ResourcePackEntry { path: string; scope: ResourcePackScope; content: string; } export declare function sha256Hex(value: string): string; export declare function canonicalJson(value: unknown): string; export declare function checksumResourcePackResources(resources: ResourcePackResource[]): string; export declare function redactResourceContent(path: string, content: string): { content: string; redacted: boolean; }; export declare function buildResourcePack(entries: ResourcePackEntry[], options?: { exportedAt?: number; source?: { appId?: string; scope: ResourcePackScope; }; redactions?: ResourcePackRedaction[]; }): ResourcePack; export declare function verifyResourcePack(pack: unknown): { ok: true; pack: ResourcePack; } | { ok: false; error: "invalid" | "checksum_mismatch" | "unsupported_version"; };