import { WormholeOpening, WormholeConsumer } from "./consumer";
import { FunctionalComponent } from "@stencil/core";
export interface Creator {
    connectedCallback?(): void;
    disconnectedCallback?(): void;
}
export declare type UniverseState = Record<string, any>;
export interface UniverseProviderProps {
    state: UniverseState;
}
export declare type Wormholes = Map<WormholeConsumer, WormholeOpening>;
export interface Universe {
    wormholes: Wormholes;
    state: UniverseState;
}
export declare const Universe: {
    create(creator: Creator, initialState: UniverseState): void;
    Provider: FunctionalComponent<UniverseProviderProps>;
};
