import { HTMLElementBase } from "../engine_ssr.js";
declare global {
interface HTMLElementTagNameMap {
"needle-button": NeedleButtonElement;
}
}
/**
* [<needle-button>](https://engine.needle.tools/docs/api/NeedleButtonElement) is a web component for easily adding AR, VR, Quicklook, or QR code buttons to your website without writing JavaScript code.
*
* The button automatically handles session management and displays appropriate UI based on device capabilities.
* It comes with default styling (glassmorphism design) but can be fully customized with CSS.
*
* **Supported button types:**
* - `ar` - WebXR AR session button
* - `vr` - WebXR VR session button
* - `quicklook` - Apple AR Quick Look button (iOS only)
* - `qrcode` - QR code sharing button
*
* @example Basic AR/VR buttons
* ```html
*
*
*
*
* ```
*
* @example Custom button labels
* ```html
* Start AR Experience
* Enter VR Mode
* View in AR
* ```
*
* @example Custom styling
* ```html
*
* Start AR
* ```
*
* @example Unstyled button (for complete custom styling)
* ```html
*
* 🥽
* Launch AR
*
* ```
*
* @see {@link NeedleEngineWebComponent} for the main <needle-engine> element
* @see {@link NeedleMenu} for the built-in menu component that can display similar buttons
*/
export declare class NeedleButtonElement extends HTMLElementBase {
#private;
static observedAttributes: string[];
constructor();
attributeChangedCallback(_name: string, _oldValue: string, _newValue: string): void;
}