import { ParsedElement } from '../../elements/parsed-element';
import { ParsedElementType } from '../utilities';
import { PathElementOptions, PathElementMixin } from './path-element.mixin';
import { RequiredElementOptions, RequiredElementMixin } from './required-element.mixin';
export interface ChildElementOptions extends RequiredElementOptions, PathElementOptions {
    tag?: string;
}
export interface ChildElementMixin<Child extends ParsedElement> extends RequiredElementMixin, PathElementMixin {
}
export declare class ChildElementMixin<Child extends ParsedElement> {
    readonly elementTypeOrFunction: ParsedElementType<Child> | (() => ParsedElementType<Child>) | null;
    readonly options: any;
    constructor(elementTypeOrFunction: ParsedElementType<Child> | (() => ParsedElementType<Child>) | null, options?: any);
    get elementType(): ParsedElementType<Child> | null;
    get tag(): string;
    get hasTag(): boolean;
}
