import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; import type { Broker, ThreadInfo } from "./broker/index.js"; import type { PinetRuntimeAdapterFactory } from "./pinet-runtime-composition.js"; import type { ParsedSlashCommand, SlackThreadContext } from "./slack-access.js"; import type { SlackBridgeSettings } from "./helpers.js"; export declare function readStoredSlackThreadContext(metadata: Record | null | undefined): SlackThreadContext | null; export declare function shouldRouteKnownSlackThread(thread: Pick | null): boolean; export interface SlackPinetRuntimeAdapterDeps { getSettings: () => SlackBridgeSettings; getBotToken: () => string; getAppToken: () => string; getAllowedUsers: () => Set | null; shouldAllowAllWorkspaceUsers: () => boolean; onAppHomeOpened: (userId: string, ctx: ExtensionContext) => Promise | void; onSlashCommand?: (event: ParsedSlashCommand, ctx: ExtensionContext) => Promise | string | null; } export declare function isAuthorizedReactionThread(broker: Broker, threadTs: string, channelId: string): boolean; export declare function createSlackPinetRuntimeAdapterFactory(deps: SlackPinetRuntimeAdapterDeps): PinetRuntimeAdapterFactory;