import type { SearchcraftCore } from "../../classes/index";
import type { PopoverButtonTemplate } from "../../types/index";
/**
* Renders a button which, when clicked, turns on popover visibility.
*
* @react-import
* ```jsx
* import { SearchcraftPopoverButton } from "@searchcraft/react-sdk";
* ````
*
* @vue-import
* ```jsx
* import { SearchcraftPopoverButton } from "@searchcraft/vue-sdk";
* ```
*
* @js-example
* ```html
*
*
* Open popover
*
* ```
*
* ```js
* // index.js
* const popoverButton = document.querySelector('searchcraft-popover-button');
*
* popoverButton.template = ({ isPopoverVisible }, { html }) => html`
* Click me
* `;
* ```
*
* @react-example
* ```jsx
* html`
* Click me
* `}
* >
* Open popover
*
* ```
*
* @vue-example
* ```jsx
* html`
* Click me
* `}
* >
* Open popover
*
* ```
*/
export declare class SearchcraftPopoverButton {
/**
* A callback function responsible for rendering the button contents.
*/
template?: PopoverButtonTemplate;
/**
* The type of popover button to render.
*/
type?: 'skeuomorphic' | 'magnifying-glass';
/**
* The id of the Searchcraft instance that this component should use.
*/
searchcraftId?: string;
hotkey: any;
hotkeyModifier: any;
hotkeyModifierSymbol: any;
isPopoverVisible: any;
userAgent: any;
private unsubscribe;
private cleanupCore?;
private core?;
onCoreAvailable(core: SearchcraftCore): void;
connectedCallback(): void;
handleOnClick(): void;
disconnectedCallback(): void;
setUserAgent(): "window" | "mac" | "other";
renderOptionSymbol: () => any;
renderCtrlSymbol: () => any;
renderWindowsMetaSymbol: () => any;
renderMacMetaSymbol: () => any;
setHotkeyModifierSymbol(): any;
renderSkeuomorphicSlot(): any;
renderSlot(): any;
render(): any;
}
//# sourceMappingURL=searchcraft-popover-button.d.ts.map