@cycle/dom
Version:
The standard DOM Driver for Cycle.js, based on Snabbdom
32 lines (31 loc) • 1.4 kB
TypeScript
import { Stream, MemoryStream } from 'xstream';
import { EventsFnOptions } from './DOMSource';
import { DocumentDOMSource } from './DocumentDOMSource';
import { BodyDOMSource } from './BodyDOMSource';
import { VNode } from 'snabbdom';
import { Scope, IsolateSink } from './isolate';
import { IsolateModule } from './IsolateModule';
import { EventDelegator } from './EventDelegator';
export interface SpecialSelector {
body: BodyDOMSource;
document: DocumentDOMSource;
}
export declare class MainDOMSource {
private _rootElement$;
private _sanitation$;
private _namespace;
_isolateModule: IsolateModule;
private _eventDelegator;
private _name;
constructor(_rootElement$: Stream<Element>, _sanitation$: Stream<null>, _namespace: Array<Scope>, _isolateModule: IsolateModule, _eventDelegator: EventDelegator, _name: string);
private _elements;
elements(): MemoryStream<Array<Element>>;
element(): MemoryStream<Element>;
readonly namespace: Array<Scope>;
select<T extends keyof SpecialSelector>(selector: T): SpecialSelector[T];
select(selector: string): MainDOMSource;
events<K extends keyof HTMLElementEventMap>(eventType: K, options?: EventsFnOptions, bubbles?: boolean): Stream<HTMLElementEventMap[K]>;
dispose(): void;
isolateSource: (source: MainDOMSource, scope: string) => MainDOMSource;
isolateSink: IsolateSink<VNode>;
}