import { string_javascript_name } from '../../_packages/types.index';
import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
import { ToolFunction } from '../../scripting/javascript/JavascriptExecutionToolsOptions';
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
/**
 * USE IMAGE GENERATOR commitment definition
 *
 * The `USE IMAGE GENERATOR` commitment indicates that the agent should utilize an image generation tool
 * to create images based on text prompts.
 *
 * Example usage in agent source:
 *
 * ```book
 * USE IMAGE GENERATOR
 * USE IMAGE GENERATOR Create realistic images of nature
 * ```
 *
 * @private [🪔] Maybe export the commitments through some package
 */
export declare class UseImageGeneratorCommitmentDefinition extends BaseCommitmentDefinition<'USE IMAGE GENERATOR' | 'USE IMAGE GENERATION' | 'IMAGE GENERATOR' | 'IMAGE GENERATION' | 'USE IMAGE'> {
    constructor(type?: 'USE IMAGE GENERATOR' | 'USE IMAGE GENERATION' | 'IMAGE GENERATOR' | 'IMAGE GENERATION' | 'USE IMAGE');
    /**
     * Short one-line description of USE IMAGE GENERATOR.
     */
    get description(): string;
    /**
     * Icon for this commitment.
     */
    get icon(): string;
    /**
     * Markdown documentation for USE IMAGE GENERATOR commitment.
     */
    get documentation(): string;
    applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
    /**
     * Gets human-readable titles for tool functions provided by this commitment.
     */
    getToolTitles(): Record<string_javascript_name, string>;
    /**
     * Gets the `generate_image` tool function implementation.
     */
    getToolFunctions(): Record<string_javascript_name, ToolFunction>;
}
/**
 * Note: [💞] Ignore a discrepancy between file name and entity name
 */
