import Renderer from '../../Renderer'; import Element from '../../../nodes/Element'; import Wrapper from '../shared/Wrapper'; import Block from '../../Block'; import FragmentWrapper from '../Fragment'; import AttributeWrapper from './Attribute'; import StyleAttributeWrapper from './StyleAttribute'; import SpreadAttributeWrapper from './SpreadAttribute'; import Binding from './Binding'; import { Identifier } from 'estree'; import EventHandler from './EventHandler'; interface BindingGroup { events: string[]; bindings: Binding[]; } export default class ElementWrapper extends Wrapper { node: Element; fragment: FragmentWrapper; attributes: Array; bindings: Binding[]; event_handlers: EventHandler[]; class_dependencies: string[]; select_binding_dependencies?: Set; var: any; void: boolean; child_dynamic_element_block?: Block; child_dynamic_element?: ElementWrapper; constructor(renderer: Renderer, block: Block, parent: Wrapper, node: Element, strip_whitespace: boolean, next_sibling: Wrapper); render(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; render_dynamic_element(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; is_dom_node(): boolean; render_element(block: Block, parent_node: Identifier, parent_nodes: Identifier): void; can_use_textcontent(): boolean; get_render_statement(block: Block): (Identifier & { start: number; end: number; }) | (import("estree").SimpleLiteral & { start: number; end: number; }) | (import("estree").RegExpLiteral & { start: number; end: number; }) | (import("estree").BigIntLiteral & { start: number; end: number; }) | (import("estree").FunctionExpression & { start: number; end: number; }) | (import("estree").ArrowFunctionExpression & { start: number; end: number; }) | (import("estree").ThisExpression & { start: number; end: number; }) | (import("estree").ArrayExpression & { start: number; end: number; }) | (import("estree").ObjectExpression & { start: number; end: number; }) | (import("estree").YieldExpression & { start: number; end: number; }) | (import("estree").UnaryExpression & { start: number; end: number; }) | (import("estree").UpdateExpression & { start: number; end: number; }) | (import("estree").BinaryExpression & { start: number; end: number; }) | (import("estree").AssignmentExpression & { start: number; end: number; }) | (import("estree").LogicalExpression & { start: number; end: number; }) | (import("estree").MemberExpression & { start: number; end: number; }) | (import("estree").ConditionalExpression & { start: number; end: number; }) | (import("estree").SimpleCallExpression & { start: number; end: number; }) | (import("estree").NewExpression & { start: number; end: number; }) | (import("estree").SequenceExpression & { start: number; end: number; }) | (import("estree").TemplateLiteral & { start: number; end: number; }) | (import("estree").TaggedTemplateExpression & { start: number; end: number; }) | (import("estree").ClassExpression & { start: number; end: number; }) | (import("estree").MetaProperty & { start: number; end: number; }) | (import("estree").AwaitExpression & { start: number; end: number; }) | (import("estree").ImportExpression & { start: number; end: number; }) | (import("estree").ChainExpression & { start: number; end: number; }); get_claim_statement(block: Block, nodes: Identifier): (Identifier & { start: number; end: number; }) | (import("estree").SimpleLiteral & { start: number; end: number; }) | (import("estree").RegExpLiteral & { start: number; end: number; }) | (import("estree").BigIntLiteral & { start: number; end: number; }) | (import("estree").FunctionExpression & { start: number; end: number; }) | (import("estree").ArrowFunctionExpression & { start: number; end: number; }) | (import("estree").ThisExpression & { start: number; end: number; }) | (import("estree").ArrayExpression & { start: number; end: number; }) | (import("estree").ObjectExpression & { start: number; end: number; }) | (import("estree").YieldExpression & { start: number; end: number; }) | (import("estree").UnaryExpression & { start: number; end: number; }) | (import("estree").UpdateExpression & { start: number; end: number; }) | (import("estree").BinaryExpression & { start: number; end: number; }) | (import("estree").AssignmentExpression & { start: number; end: number; }) | (import("estree").LogicalExpression & { start: number; end: number; }) | (import("estree").MemberExpression & { start: number; end: number; }) | (import("estree").ConditionalExpression & { start: number; end: number; }) | (import("estree").SimpleCallExpression & { start: number; end: number; }) | (import("estree").NewExpression & { start: number; end: number; }) | (import("estree").SequenceExpression & { start: number; end: number; }) | (import("estree").TemplateLiteral & { start: number; end: number; }) | (import("estree").TaggedTemplateExpression & { start: number; end: number; }) | (import("estree").ClassExpression & { start: number; end: number; }) | (import("estree").MetaProperty & { start: number; end: number; }) | (import("estree").AwaitExpression & { start: number; end: number; }) | (import("estree").ImportExpression & { start: number; end: number; }) | (import("estree").ChainExpression & { start: number; end: number; }); add_directives_in_order(block: Block): void; add_bindings(block: Block, binding_group: BindingGroup): void; add_this_binding(block: Block, this_binding: Binding): void; add_attributes(block: Block): void; add_spread_attributes(block: Block): void; add_transitions(block: Block): void; add_animation(block: Block): void; add_classes(block: Block): void; add_styles(block: Block): void; add_manual_style_scoping(block: any): void; } export {};