/**
* Minimal Web Component helper for building custom elements.
*
* This module provides a declarative API for defining Web Components
* without complex build steps. Features include:
* - Type-safe props with automatic attribute coercion
* - Reactive state management
* - Shadow DOM encapsulation with scoped styles
* - Lifecycle hooks (connected, disconnected)
* - Event emission helpers
*
* @module bquery/component
*
* @example
* ```ts
* import { component, html } from 'bquery/component';
*
* component('user-card', {
* props: {
* username: { type: String, required: true },
* avatar: { type: String, default: '/default-avatar.png' },
* },
* styles: `
* .card { padding: 1rem; border: 1px solid #ccc; }
* `,
* render({ props }) {
* return html`
*
*

*
${props.username}
*
* `;
* },
* });
* ```
*/
export { component, defineComponent } from './component';
export { bool, html, safeHtml } from './html';
export { registerDefaultComponents } from './library';
export { useComputed, useEffect, useSignal } from './scope';
export { useRef } from './refs';
export type { Ref } from './refs';
export { hasSlot, slotText, useSlot } from './slots';
export { bindDelegatedEvents, on, onChange, onClick, onInput, onSubmit, } from './events';
export { formContextKey, inject, injectionKey, provide, } from './inject';
export type { InjectionKey } from './inject';
export { useAsync, whenIdle } from './async';
export type { UseAsyncResult } from './async';
export { applyAdoptedStyles, css, isComponentStyles } from './css';
export type { ComponentStyles } from './css';
export { keyedList, reconcileKeyed } from './keyed-list';
export type { DefaultComponentLibraryOptions, RegisteredDefaultComponents } from './library';
export type { AttributeChange, ComponentClass, ComponentDefinition, ComponentElement, ComponentRenderContext, ComponentSignalLike, ComponentSignals, ComponentStateKey, ComponentStateShape, PropDefinition, ShadowMode, } from './types';
//# sourceMappingURL=index.d.ts.map