import { LitElement } from 'lit';
type Constructor<T = object> = new (...args: any[]) => T;
export declare class ReadyMixinInterface {
}
/**
 * @mixin
 * Mixin that ensures DOM is fully loaded before initializing component
 * Prevents components from querying or manipulating DOM elements before
 * they're available by deferring \`super.connectedCallback()\` until the DOM is ready.
 *
 * @example
 * ```typescript
 * import { ReadyMixin } from './ReadyMixin'
 *
 * // Basic usage
 * class MyComponent extends ReadyMixin(LitElement) {
 *   connectedCallback() {
 *     super.connectedCallback()
 *     // DOM is guaranteed to be ready here
 *     const child = this.querySelector('.child')
 *   }
 * }
 *
 * // With multiple mixins
 * class NavRail extends EventEmitterMixin(ReadyMixin(LitElement)) {
 *   // All mixins benefit from DOM-ready guarantee
 * }
 */
export declare const ReadyMixin: <T extends Constructor<LitElement>>(superClass: T) => Constructor<ReadyMixinInterface> & T;
export {};
//# sourceMappingURL=ReadyMixin.d.ts.map