import type { ChannelType, ButtonStyle, Message, Emoji } from "lilybird";
export declare function ActionRow({ children }: {
    children: Array<Exclude<Message.Component.Structure, Message.Component.ActionRowStructure>> | Exclude<Message.Component.Structure, Message.Component.ActionRowStructure>;
}): Message.Component.ActionRowStructure;
export declare function Button(props: {
    id: string;
    style: Exclude<ButtonStyle, ButtonStyle.Link>;
    label?: string;
    emoji?: Pick<Emoji.Structure, "name" | "id" | "animated">;
    disabled?: boolean;
} | {
    url: string;
    style: ButtonStyle.Link;
    label?: string;
    emoji?: Pick<Emoji.Structure, "name" | "id" | "animated">;
    disabled?: boolean;
}): Message.Component.ButtonStructure;
export declare function TextInputModal({ id, style, label, min_length, max_length, required, value, placeholder }: Omit<Message.Component.TextInputStructure, "custom_id" | "type"> & {
    id: string;
}): Message.Component.TextInputStructure;
interface BaseSelectMenuOptions {
    id: string;
    placeholder?: string;
    min_values?: number;
    max_values?: number;
    disabled?: boolean;
}
export declare function StringSelectMenu({ id, placeholder, min_values, max_values, disabled, children }: BaseSelectMenuOptions & {
    children: Array<Message.Component.SelectOptionStructure> | Message.Component.SelectOptionStructure;
}): Message.Component.SelectMenuStructure;
export declare function UserSelectMenu({ id, placeholder, min_values, max_values, disabled, children }: BaseSelectMenuOptions & {
    children?: Array<Message.Component.SelectDefaultValueStructure> | Message.Component.SelectDefaultValueStructure;
}): Message.Component.SelectMenuStructure;
export declare function RoleSelectMenu({ id, placeholder, min_values, max_values, disabled, children }: BaseSelectMenuOptions & {
    children?: Array<Message.Component.SelectDefaultValueStructure> | Message.Component.SelectDefaultValueStructure;
}): Message.Component.SelectMenuStructure;
export declare function MentionableSelectMenu({ id, placeholder, min_values, max_values, disabled, children }: BaseSelectMenuOptions & {
    children?: Array<Message.Component.SelectDefaultValueStructure> | Message.Component.SelectDefaultValueStructure;
}): Message.Component.SelectMenuStructure;
export declare function ChannelSelectMenu({ id, placeholder, min_values, max_values, channel_types, disabled, children }: BaseSelectMenuOptions & {
    channel_types?: Array<ChannelType>;
    children?: Array<Message.Component.SelectDefaultValueStructure> | Message.Component.SelectDefaultValueStructure;
}): Message.Component.SelectMenuStructure;
export {};
//# sourceMappingURL=components.d.ts.map