import type { State } from "@elizaos/core";
export interface ToolSelection {
    serverName: string;
    toolName: string;
    arguments: Record<string, unknown>;
    reasoning?: string;
    noToolAvailable?: boolean;
}
export interface ResourceSelection {
    serverName: string;
    uri: string;
    reasoning?: string;
    noResourceAvailable?: boolean;
}
export declare function validateToolSelection(selection: unknown, composedState: State): {
    success: true;
    data: ToolSelection;
} | {
    success: false;
    error: string;
};
export declare function validateResourceSelection(selection: unknown): {
    success: true;
    data: ResourceSelection;
} | {
    success: false;
    error: string;
};
export declare function createToolSelectionFeedbackPrompt(originalResponse: string, errorMessage: string, composedState: State, userMessage: string): string;
export declare function createResourceSelectionFeedbackPrompt(originalResponse: string, errorMessage: string, composedState: State, userMessage: string): string;
