import { type Constructor } from '../../types.js'; import { type BaseComponent } from '../../base_component.js'; import { Slot } from './slot.js'; import { PlaceholderSlot } from './placeholder_slot.js'; /** PHP parity: HandlesSlots trait */ export declare function HandlesSlots>(Base: T): { new (...args: any[]): { "__#175@#slotsForSkippedChildRenders": string[]; "__#175@#slots": Array; /** * Parent concerns — recording a hijacked child's slots so this * component's own dehydrate can still report them for morphing. */ getSlotsForSkippedChildRenders(): string[]; withChildSlots(slots: Record, childId: string): void; /** * Child concerns — the slots this component itself was given by its * parent, exposed to its own template via SupportSlots.render(). */ getSlots(): Array; withSlots(slots: Record, parent: { getId(): string; } | null): /*elided*/ any; withPlaceholderSlots(slots: Array<{ name: string; componentId: string; parentId: string | null; }>): /*elided*/ any; withHydratedSlots(slots: Array<{ name: string; content: string; componentId: string; parentId: string | null; }>): /*elided*/ any; "__#170@#id": string; "__#170@#name": string; "__#170@#viewPath": string; "__#170@#view": ReturnType; "__#170@#viewData": Record; "__#170@#router": import("@adonisjs/core/types").HttpRouterService; bindings: any; app: import("@adonisjs/core/types").ApplicationService; ctx: import("@adonisjs/http-server").HttpContext; __setRouter(router: import("@adonisjs/core/types").HttpRouterService): void; __getRouter(): import("@adonisjs/core/types").HttpRouterService; __id: string; __name: string; viewPath: string; view: ReturnType; viewData: Record; setId(id: string): void; getId(): string; setName(name: string): void; setViewPath(view: string): void; getName(): string; render(): Promise; skipRender(html?: string): void; transition(type?: string): void; skipTransition(): void; shouldSkipRender(): boolean; skipMount(): void; skipHydrate(): void; }; } & T;