import { ContainerBuilder } from 'discord.js';
import type { ContainerInput, ContainerOptions, DisplayInput, SectionOptions, SectionTexts } from '../types';
/**
 * Creates a public section component.
 *
 * @param texts Section text blocks.
 * @param opts Section accessory options.
 * @returns Public section component.
 */
export declare function section(texts: SectionTexts, opts?: SectionOptions): {
    button?: import("../types").Button;
    thumbnail?: import("../types").Thumbnail;
    type: "section";
    texts: SectionTexts;
};
/**
 * Creates a public container builder.
 *
 * @param args Container options followed by components, or components only.
 * @returns Discord container builder.
 */
export declare function container(...args: [ContainerOptions, ...ContainerInput[]] | ContainerInput[]): ContainerBuilder;
/**
 * Creates a rendered display component array from public display inputs.
 *
 * @param components Display inputs to render.
 * @returns Rendered display components with attachment metadata.
 */
export declare function render(...components: DisplayInput[]): import("..").RenderedComponents;
/**
 * Sends a rendered component payload through an interaction reply.
 *
 * @param interaction Reply-capable interaction.
 * @param payload Message payload.
 * @returns Interaction reply promise.
 */
export declare function send(interaction: {
    reply(options: unknown): Promise<unknown>;
}, payload: {
    ephemeral?: boolean;
    files?: readonly unknown[];
    components: import('../types').RenderedComponents;
}): Promise<unknown>;
//# sourceMappingURL=container.d.ts.map