/**
 * Chat Commands — read side: handleReadChat, handleChatHistory and the
 * native-history / source-resolution / normalization helpers they use.
 */
import type { CommandResult, CommandHelpers } from './handler.js';
import type { ChatMessage } from '../types.js';
/**
 * Test-only: clear the in-memory read-pin map and re-arm cold-start hydration so
 * each test starts from a clean pin state. The on-disk mirror is isolated per
 * test process via ADHDEV_CONFIG_DIR (test/helpers/setup-env.ts); this resets the
 * module-level cache that would otherwise leak a pin across tests sharing the
 * worker. Not part of the runtime contract.
 */
export declare function __resetProviderSessionPinsForTest(): void;
/**
 * Test-only: read the in-memory read-pin (the mesh-session → conversation-uuid
 * bind recorded by recordBoundProviderSessionId and mirrored to state.json
 * sessionProviderSessionPins). Lets the antigravity-coordinator-pin tests assert
 * that an owner-confirmed workspace-latest read recorded the pin — and that a
 * non-owner-confirmed read did NOT. Not part of the runtime contract.
 */
export declare function __getProviderSessionPinForTest(meshSessionId: string): string | undefined;
export declare function normalizeNativeHistoryMessages(providerType: string, messages: ChatMessage[], nativeSessionId?: string): ChatMessage[];
/** Test hook for the symlink-safe workspace comparison used by the
 *  native-history workspace-safety gate. */
export declare function __normalizeComparableWorkspaceForTest(value: unknown): string;
export declare function handleChatHistory(h: CommandHelpers, args: any): Promise<CommandResult>;
export declare function handleReadChat(h: CommandHelpers, args: any): Promise<CommandResult>;
