import type { SlackResult } from "./slack-api.js"; export declare const DEFAULT_SLACK_FILE_CACHE_TTL_MS: number; export declare const DEFAULT_SLACK_FILE_MAX_DOWNLOAD_BYTES: number; export interface SlackFileDescriptor { fileId: string; path: string; filename: string; mimetype?: string; filetype?: string; prettyType?: string; size: number; sha256: string; cacheDir: string; expiresAt: string; residualRisks: string[]; } export interface SlackFileLookupContext { channelId?: string; threadTs?: string; messageTs?: string; } export interface SlackFileDownloadDeps { slack: (method: string, token: string, body?: Record) => Promise; token: string; fetchImpl?: (url: string, init: RequestInit) => Promise & { body?: Response["body"]; }>; now?: () => Date; cacheDir?: string; ttlMs?: number; maxBytes?: number; } export declare function fetchSlackFileToCache(fileId: string, context: SlackFileLookupContext, deps: SlackFileDownloadDeps): Promise; export declare function readCachedSlackFile(pathname: string): Promise;