import { SlackAPIClient } from "slack-web-api-client";
import { AssistantThreadContext } from "./thread-context";
export type AssistantThreadKey = {
    channel_id: string;
    thread_ts: string;
};
export interface AssistantThreadContextStore {
    save(key: AssistantThreadKey, newContext: AssistantThreadContext): Promise<void>;
    find(key: AssistantThreadKey): Promise<AssistantThreadContext | undefined>;
}
export interface DefaultAssistantThreadContextStoreOptions {
    client: SlackAPIClient;
    thisBotUserId: string;
}
export declare class DefaultAssistantThreadContextStore implements AssistantThreadContextStore {
    #private;
    constructor({ client, thisBotUserId }: DefaultAssistantThreadContextStoreOptions);
    save(key: AssistantThreadKey, newContext: AssistantThreadContext): Promise<void>;
    find(key: AssistantThreadKey): Promise<AssistantThreadContext | undefined>;
}
//# sourceMappingURL=thread-context-store.d.ts.map