import { Element } from '../../../../client/element';
import { System } from '../../../../system';
import { Dict } from '../../../../types/Dict';
export interface Props {
    id: string;
    className?: string;
    style?: Dict<string>;
    src?: string;
    srcdoc?: string;
    allow?: {
        autoplay?: boolean;
        camera?: boolean;
        encryptedMedia?: boolean;
        fullscreen?: boolean;
        microphone?: boolean;
        pictureInPicture?: boolean;
        scripts?: boolean;
    };
}
export declare const DEFAULT_STYLE: {
    display: string;
    border: string;
    width: string;
    height: string;
};
export default class Iframe extends Element<HTMLSlotElement | HTMLIFrameElement, Props> {
    _iframe_el: HTMLIFrameElement;
    private _slot_id;
    private _prop_handler;
    constructor($props: Props, $system: System);
    onPropChanged(prop: string, current: any): void;
    private _setSrc;
    private _parseSrc;
    onMount(): void;
    onUnmount(): void;
    send(data: any): void;
    onDestroy(): void;
}
