import type { ChannelId, ChannelMessageActionName, ChannelThreadingToolContext } from "../../channels/plugins/types.js";
import type { SymiConfig } from "../../config/config.js";
export declare function readBooleanParam(params: Record<string, unknown>, key: string): boolean | undefined;
export declare function resolveSlackAutoThreadId(params: {
    to: string;
    toolContext?: ChannelThreadingToolContext;
}): string | undefined;
export declare function normalizeSandboxMediaParams(params: {
    args: Record<string, unknown>;
    sandboxRoot?: string;
}): Promise<void>;
export declare function normalizeSandboxMediaList(params: {
    values: string[];
    sandboxRoot?: string;
}): Promise<string[]>;
export declare function hydrateSetGroupIconParams(params: {
    cfg: SymiConfig;
    channel: ChannelId;
    accountId?: string | null;
    args: Record<string, unknown>;
    action: ChannelMessageActionName;
    dryRun?: boolean;
}): Promise<void>;
export declare function hydrateSendAttachmentParams(params: {
    cfg: SymiConfig;
    channel: ChannelId;
    accountId?: string | null;
    args: Record<string, unknown>;
    action: ChannelMessageActionName;
    dryRun?: boolean;
}): Promise<void>;
export declare function parseButtonsParam(params: Record<string, unknown>): void;
export declare function parseCardParam(params: Record<string, unknown>): void;
export declare function parseComponentsParam(params: Record<string, unknown>): void;
