import type { IAgentRuntime, Media, Memory, MentionContext, Plugin, Room } from "../types/index.ts";
import type { ServiceClass } from "../types/plugin.ts";
export * from "./actions/index.ts";
export * from "./evaluators/index.ts";
export * from "./providers/index.ts";
type MediaData = {
    data: Buffer;
    mediaType: string;
};
export declare function fetchMediaData(attachments: Media[], fetchFn?: typeof fetch): Promise<MediaData[]>;
/**
 * Processes attachments by generating descriptions for supported media types.
 * Currently supports image description generation.
 *
 * @param {Media[]} attachments - Array of attachments to process
 * @param {IAgentRuntime} runtime - The agent runtime for accessing AI models
 * @returns {Promise<Media[]>} - Returns a new array of processed attachments with added description, title, and text properties
 */
export declare function processAttachments(attachments: Media[] | null | undefined, runtime: IAgentRuntime): Promise<Media[]>;
export declare function shouldRespond(runtime: IAgentRuntime, message: Memory, room?: Room, mentionContext?: MentionContext): {
    shouldRespond: boolean;
    skipEvaluation: boolean;
    reason: string;
};
/**
 * Configuration for bootstrap capabilities.
 * - Basic: Core functionality (reply, ignore, none actions; core providers; task/embedding services)
 * - Advanced: Additional features (choice, mute/follow room, roles, settings, image generation)
 * - Autonomy: Autonomous operation (autonomy service, admin communication, status providers)
 */
export interface CapabilityConfig {
    /** Disable basic capabilities (default: false) */
    disableBasic?: boolean;
    /** Enable advanced capabilities (default: false) */
    advancedCapabilities?: boolean;
    /** Skip the character provider (used for anonymous agents without a character file) */
    skipCharacterProvider?: boolean;
    /** Enable autonomy capabilities (default: false) */
    enableAutonomy?: boolean;
}
declare const basic: {
    providers: import("../types/components.ts").Provider[];
    actions: import("../types/components.ts").Action[];
    evaluators: never[];
    services: ServiceClass[];
};
declare const advanced: {
    providers: import("../types/components.ts").Provider[];
    actions: import("../types/components.ts").Action[];
    evaluators: import("../types/components.ts").Evaluator[];
    services: ServiceClass[];
};
declare const autonomyCapabilities: {
    providers: import("../types/components.ts").Provider[];
    actions: import("../types/components.ts").Action[];
    evaluators: never[];
    services: ServiceClass[];
    routes: import("../types/plugin.ts").Route[];
    events: {};
};
export declare function createBootstrapPlugin(config?: CapabilityConfig): Plugin;
export { advanced as advancedCapabilities, autonomyCapabilities, basic as basicCapabilities, };
export * from "../autonomy/index.ts";
//# sourceMappingURL=index.d.ts.map