import { JSXSlack } from '../../jsx'; import { BuiltInComponent } from '../../jsx-internals'; import { OptgroupComposition } from '../composition/Optgroup'; import { OptionComposition } from '../composition/Option'; export declare const selectFragmentSelectedOptionsSymbol: unique symbol; export type SelectFragmentObject = ({ options: OptionComposition[]; } | { option_groups: OptgroupComposition[]; }) & { readonly [selectFragmentSelectedOptionsSymbol]?: OptionComposition[]; }; export interface SelectFragmentProps { children?: JSXSlack.ChildNodes; } export declare const SelectFragmentInternal: BuiltInComponent | undefined; }>; /** * Generate JSON for the external data source of ``. * * It must contain elements either of `` as immediate * children. The outputted JSON has an array of corresponded elements, or empty * options array if it has provided no options. * * For example, [Bolt framework for JavaScript](https://slack.dev/bolt/concepts#options) * by Slack can provide external data source easily by using `` * together. * * ```javascript * // `app` is an instance of the app created by Bolt framework * app.options('external_action', async ({ ack }) => { * await ack( * * * * * * ) * }) * ``` * * @return The JSON for the external data source */ export declare const SelectFragment: BuiltInComponent;