import type { ChatTriggerConnectorParams, ChatTriggerRenderState } from '../../connectors/chat/connectChatTrigger'; import type { Template } from '../../types'; import type { ChatToggleButtonProps } from 'instantsearch-ui-components'; export type ChatTriggerCSSClasses = Partial<{ /** * CSS class to add to the button. */ button: string | string[]; }>; export type ChatTriggerTemplates = Partial<{ /** * Template for the trigger button layout. */ layout: Template; /** * Template for the trigger button icon. */ icon: Template<{ isOpen: boolean; }>; }>; export type ChatTriggerWidgetParams = { /** * CSS Selector or HTMLElement to insert the widget. */ container: string | HTMLElement; /** * Templates to use for the widget. */ templates?: ChatTriggerTemplates; /** * CSS classes to add. */ cssClasses?: ChatTriggerCSSClasses; /** * Whether the button is positioned as a floating action button at the * bottom-right of the viewport. Set to `false` to render an inline button * that flows with surrounding content. * @default true */ floating?: boolean; }; export default function chatTrigger(widgetParams: ChatTriggerWidgetParams): { $$widgetType: "ais.chatTrigger"; parent?: import("../index").IndexWidget; $$type: "ais.chatTrigger"; init?: (options: import("../../types").InitOptions) => void; shouldRender?: (options: import("../../types").ShouldRenderOptions) => boolean; render?: (options: import("../../types").RenderOptions) => void; dispose?: (options: import("../../types").DisposeOptions) => import("algoliasearch-helper").SearchParameters | import("algoliasearch-helper").RecommendParameters | void; getWidgetUiState?: ((uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }, widgetUiStateOptions: { searchParameters: import("algoliasearch-helper").SearchParameters; helper: import("algoliasearch-helper").AlgoliaSearchHelper; }) => Partial) | undefined; getWidgetState?: ((uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }, widgetUiStateOptions: { searchParameters: import("algoliasearch-helper").SearchParameters; helper: import("algoliasearch-helper").AlgoliaSearchHelper; }) => Partial) | undefined; getWidgetSearchParameters?: ((state: import("algoliasearch-helper").SearchParameters, widgetSearchParametersOptions: { uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }; }) => import("algoliasearch-helper").SearchParameters) | undefined; getWidgetRenderState: (renderOptions: import("../../types").InitOptions | import("../../types").RenderOptions) => import("../../types").Expand>; getRenderState: (renderState: { answers?: import("../../types").WidgetRenderState | undefined; autocomplete?: import("../../types").WidgetRenderState | undefined; breadcrumb?: { [rootAttribute: string]: import("../../types").WidgetRenderState; } | undefined; chat?: import("../../types").WidgetRenderState>, import("../../connectors/chat/connectChat").ChatConnectorParams>> | undefined; clearRefinements?: import("../../types").WidgetRenderState | undefined; configure?: import("../../types").WidgetRenderState | undefined; currentRefinements?: import("../../types").WidgetRenderState | undefined; feeds?: import("../../connectors/feeds/connectFeeds").FeedsRenderState | undefined; geoSearch?: import("../../types").WidgetRenderState, import("../../connectors/geo-search/connectGeoSearch").GeoSearchConnectorParams> | undefined; hierarchicalMenu?: { [rootAttribute: string]: import("../../types").WidgetRenderState; } | undefined; hits?: import("../../types").WidgetRenderState, import("../../connectors/hits/connectHits").HitsConnectorParams> | undefined; hitsPerPage?: import("../../types").WidgetRenderState | undefined; infiniteHits?: import("../../types").WidgetRenderState, import("../../connectors/infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams> | undefined; menu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; numericMenu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; pagination?: import("../../types").WidgetRenderState | undefined; poweredBy?: import("../../types").WidgetRenderState | undefined; queryRules?: import("../../types").WidgetRenderState | undefined; range?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; ratingMenu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; refinementList?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; relevantSort?: import("../../types").WidgetRenderState | undefined; searchBox?: import("../../types").WidgetRenderState | undefined; sortBy?: import("../../types").WidgetRenderState | undefined; stats?: import("../../types").WidgetRenderState | undefined; toggleRefinement?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; voiceSearch?: import("../../types").WidgetRenderState | undefined; analytics?: import("../../types").WidgetRenderState, import("../analytics/analytics").AnalyticsWidgetParams> | undefined; places?: import("../../types").WidgetRenderState, import("../places/places").PlacesWidgetParams> | undefined; chatTrigger?: import("../../types").WidgetRenderState | undefined; }, renderOptions: import("../../types").InitOptions | import("../../types").RenderOptions) => import("../../types").IndexRenderState & { chatTrigger: import("../../types").WidgetRenderState; }; dependsOn?: "search"; getWidgetParameters?: ((state: import("algoliasearch-helper").SearchParameters, widgetParametersOptions: { uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }; }) => import("algoliasearch-helper").SearchParameters) | undefined; } | { $$widgetType: "ais.chatTrigger"; parent?: import("../index").IndexWidget; $$type: "ais.chatTrigger"; init?: (options: import("../../types").InitOptions) => void; shouldRender?: (options: import("../../types").ShouldRenderOptions) => boolean; render?: (options: import("../../types").RenderOptions) => void; dispose?: (options: import("../../types").DisposeOptions) => import("algoliasearch-helper").SearchParameters | import("algoliasearch-helper").RecommendParameters | void; getWidgetUiState?: ((uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }, widgetUiStateOptions: { searchParameters: import("algoliasearch-helper").SearchParameters; helper: import("algoliasearch-helper").AlgoliaSearchHelper; }) => Partial) | undefined; getWidgetState?: ((uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }, widgetUiStateOptions: { searchParameters: import("algoliasearch-helper").SearchParameters; helper: import("algoliasearch-helper").AlgoliaSearchHelper; }) => Partial) | undefined; getWidgetSearchParameters?: ((state: import("algoliasearch-helper").SearchParameters, widgetSearchParametersOptions: { uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }; }) => import("algoliasearch-helper").SearchParameters) | undefined; getWidgetRenderState: ((renderOptions: import("../../types").InitOptions | import("../../types").RenderOptions) => import("../../types").Expand>) & ((renderOptions: import("../../types").InitOptions | ({ instantSearchInstance: import("../../types").InstantSearch; parent: import("../index").IndexWidget; templatesConfig: Record; scopedResults: import("../../types").ScopedResult[]; state: import("algoliasearch-helper").SearchParameters; renderState: Partial<{ answers: import("../../types").WidgetRenderState; } & { autocomplete: import("../../types").WidgetRenderState; } & { breadcrumb: { [rootAttribute: string]: import("../../types").WidgetRenderState; }; } & { chat: import("../../types").WidgetRenderState>, import("../../connectors/chat/connectChat").ChatConnectorParams>>; } & { clearRefinements: import("../../types").WidgetRenderState; } & { configure: import("../../types").WidgetRenderState; } & { currentRefinements: import("../../types").WidgetRenderState; } & { feeds: import("../../connectors/feeds/connectFeeds").FeedsRenderState; } & { geoSearch: import("../../types").WidgetRenderState, import("../../connectors/geo-search/connectGeoSearch").GeoSearchConnectorParams>; } & { hierarchicalMenu: { [rootAttribute: string]: import("../../types").WidgetRenderState; }; } & { hits: import("../../types").WidgetRenderState, import("../../connectors/hits/connectHits").HitsConnectorParams>; } & { hitsPerPage: import("../../types").WidgetRenderState; } & { infiniteHits: import("../../types").WidgetRenderState, import("../../connectors/infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams>; } & { menu: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { numericMenu: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { pagination: import("../../types").WidgetRenderState; } & { poweredBy: import("../../types").WidgetRenderState; } & { queryRules: import("../../types").WidgetRenderState; } & { range: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { ratingMenu: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { refinementList: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { relevantSort: import("../../types").WidgetRenderState; } & { searchBox: import("../../types").WidgetRenderState; } & { sortBy: import("../../types").WidgetRenderState; } & { stats: import("../../types").WidgetRenderState; } & { toggleRefinement: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { voiceSearch: import("../../types").WidgetRenderState; } & { analytics: import("../../types").WidgetRenderState, import("../analytics/analytics").AnalyticsWidgetParams>; } & { places: import("../../types").WidgetRenderState, import("../places/places").PlacesWidgetParams>; }>; helper: import("algoliasearch-helper").AlgoliaSearchHelper; searchMetadata: { isSearchStalled: boolean; }; status: import("../../types").InstantSearch["status"]; error: import("../../types").InstantSearch["error"]; createURL: (nextState: import("algoliasearch-helper").SearchParameters | ((state: import("../../types").IndexUiState) => import("../../types").IndexUiState)) => string; } & { results: import("algoliasearch-helper/types/algoliasearch").RecommendResponse; })) => import("../../types").Expand>); getRenderState: ((renderState: { answers?: import("../../types").WidgetRenderState | undefined; autocomplete?: import("../../types").WidgetRenderState | undefined; breadcrumb?: { [rootAttribute: string]: import("../../types").WidgetRenderState; } | undefined; chat?: import("../../types").WidgetRenderState>, import("../../connectors/chat/connectChat").ChatConnectorParams>> | undefined; clearRefinements?: import("../../types").WidgetRenderState | undefined; configure?: import("../../types").WidgetRenderState | undefined; currentRefinements?: import("../../types").WidgetRenderState | undefined; feeds?: import("../../connectors/feeds/connectFeeds").FeedsRenderState | undefined; geoSearch?: import("../../types").WidgetRenderState, import("../../connectors/geo-search/connectGeoSearch").GeoSearchConnectorParams> | undefined; hierarchicalMenu?: { [rootAttribute: string]: import("../../types").WidgetRenderState; } | undefined; hits?: import("../../types").WidgetRenderState, import("../../connectors/hits/connectHits").HitsConnectorParams> | undefined; hitsPerPage?: import("../../types").WidgetRenderState | undefined; infiniteHits?: import("../../types").WidgetRenderState, import("../../connectors/infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams> | undefined; menu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; numericMenu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; pagination?: import("../../types").WidgetRenderState | undefined; poweredBy?: import("../../types").WidgetRenderState | undefined; queryRules?: import("../../types").WidgetRenderState | undefined; range?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; ratingMenu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; refinementList?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; relevantSort?: import("../../types").WidgetRenderState | undefined; searchBox?: import("../../types").WidgetRenderState | undefined; sortBy?: import("../../types").WidgetRenderState | undefined; stats?: import("../../types").WidgetRenderState | undefined; toggleRefinement?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; voiceSearch?: import("../../types").WidgetRenderState | undefined; analytics?: import("../../types").WidgetRenderState, import("../analytics/analytics").AnalyticsWidgetParams> | undefined; places?: import("../../types").WidgetRenderState, import("../places/places").PlacesWidgetParams> | undefined; chatTrigger?: import("../../types").WidgetRenderState | undefined; }, renderOptions: import("../../types").InitOptions | import("../../types").RenderOptions) => import("../../types").IndexRenderState & { chatTrigger: import("../../types").WidgetRenderState; }) & ((renderState: { answers?: import("../../types").WidgetRenderState | undefined; autocomplete?: import("../../types").WidgetRenderState | undefined; breadcrumb?: { [rootAttribute: string]: import("../../types").WidgetRenderState; } | undefined; chat?: import("../../types").WidgetRenderState>, import("../../connectors/chat/connectChat").ChatConnectorParams>> | undefined; clearRefinements?: import("../../types").WidgetRenderState | undefined; configure?: import("../../types").WidgetRenderState | undefined; currentRefinements?: import("../../types").WidgetRenderState | undefined; feeds?: import("../../connectors/feeds/connectFeeds").FeedsRenderState | undefined; geoSearch?: import("../../types").WidgetRenderState, import("../../connectors/geo-search/connectGeoSearch").GeoSearchConnectorParams> | undefined; hierarchicalMenu?: { [rootAttribute: string]: import("../../types").WidgetRenderState; } | undefined; hits?: import("../../types").WidgetRenderState, import("../../connectors/hits/connectHits").HitsConnectorParams> | undefined; hitsPerPage?: import("../../types").WidgetRenderState | undefined; infiniteHits?: import("../../types").WidgetRenderState, import("../../connectors/infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams> | undefined; menu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; numericMenu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; pagination?: import("../../types").WidgetRenderState | undefined; poweredBy?: import("../../types").WidgetRenderState | undefined; queryRules?: import("../../types").WidgetRenderState | undefined; range?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; ratingMenu?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; refinementList?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; relevantSort?: import("../../types").WidgetRenderState | undefined; searchBox?: import("../../types").WidgetRenderState | undefined; sortBy?: import("../../types").WidgetRenderState | undefined; stats?: import("../../types").WidgetRenderState | undefined; toggleRefinement?: { [attribute: string]: import("../../types").WidgetRenderState; } | undefined; voiceSearch?: import("../../types").WidgetRenderState | undefined; analytics?: import("../../types").WidgetRenderState, import("../analytics/analytics").AnalyticsWidgetParams> | undefined; places?: import("../../types").WidgetRenderState, import("../places/places").PlacesWidgetParams> | undefined; chatTrigger?: import("../../types").WidgetRenderState | undefined; }, renderOptions: import("../../types").InitOptions | ({ instantSearchInstance: import("../../types").InstantSearch; parent: import("../index").IndexWidget; templatesConfig: Record; scopedResults: import("../../types").ScopedResult[]; state: import("algoliasearch-helper").SearchParameters; renderState: Partial<{ answers: import("../../types").WidgetRenderState; } & { autocomplete: import("../../types").WidgetRenderState; } & { breadcrumb: { [rootAttribute: string]: import("../../types").WidgetRenderState; }; } & { chat: import("../../types").WidgetRenderState>, import("../../connectors/chat/connectChat").ChatConnectorParams>>; } & { clearRefinements: import("../../types").WidgetRenderState; } & { configure: import("../../types").WidgetRenderState; } & { currentRefinements: import("../../types").WidgetRenderState; } & { feeds: import("../../connectors/feeds/connectFeeds").FeedsRenderState; } & { geoSearch: import("../../types").WidgetRenderState, import("../../connectors/geo-search/connectGeoSearch").GeoSearchConnectorParams>; } & { hierarchicalMenu: { [rootAttribute: string]: import("../../types").WidgetRenderState; }; } & { hits: import("../../types").WidgetRenderState, import("../../connectors/hits/connectHits").HitsConnectorParams>; } & { hitsPerPage: import("../../types").WidgetRenderState; } & { infiniteHits: import("../../types").WidgetRenderState, import("../../connectors/infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams>; } & { menu: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { numericMenu: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { pagination: import("../../types").WidgetRenderState; } & { poweredBy: import("../../types").WidgetRenderState; } & { queryRules: import("../../types").WidgetRenderState; } & { range: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { ratingMenu: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { refinementList: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { relevantSort: import("../../types").WidgetRenderState; } & { searchBox: import("../../types").WidgetRenderState; } & { sortBy: import("../../types").WidgetRenderState; } & { stats: import("../../types").WidgetRenderState; } & { toggleRefinement: { [attribute: string]: import("../../types").WidgetRenderState; }; } & { voiceSearch: import("../../types").WidgetRenderState; } & { analytics: import("../../types").WidgetRenderState, import("../analytics/analytics").AnalyticsWidgetParams>; } & { places: import("../../types").WidgetRenderState, import("../places/places").PlacesWidgetParams>; }>; helper: import("algoliasearch-helper").AlgoliaSearchHelper; searchMetadata: { isSearchStalled: boolean; }; status: import("../../types").InstantSearch["status"]; error: import("../../types").InstantSearch["error"]; createURL: (nextState: import("algoliasearch-helper").SearchParameters | ((state: import("../../types").IndexUiState) => import("../../types").IndexUiState)) => string; } & { results: import("algoliasearch-helper/types/algoliasearch").RecommendResponse; })) => import("../../types").IndexRenderState & { chatTrigger: import("../../types").WidgetRenderState; }); dependsOn: "recommend"; $$id?: number; getWidgetParameters: (state: import("algoliasearch-helper").RecommendParameters, widgetParametersOptions: { uiState: { query?: string | undefined; configure?: import("algoliasearch-helper").PlainSearchParameters | undefined; geoSearch?: { boundingBox: string; } | undefined; hierarchicalMenu?: { [rootAttribute: string]: string[]; } | undefined; hitsPerPage?: number | undefined; page?: number | undefined; menu?: { [attribute: string]: string; } | undefined; numericMenu?: { [attribute: string]: string; } | undefined; range?: { [attribute: string]: string; } | undefined; ratingMenu?: { [attribute: string]: number | undefined; } | undefined; refinementList?: { [attribute: string]: string[]; } | undefined; relevantSort?: number | undefined; sortBy?: string | undefined; toggle?: { [attribute: string]: boolean; } | undefined; places?: { query: string; position: string; } | undefined; }; }) => import("algoliasearch-helper").RecommendParameters; };