import * as Component from './Component'; import * as Aggregate from './Aggregate'; import * as View from './View'; import * as Service from './Service'; import * as Trigger from './Trigger'; import { Testable } from './Test'; export interface ContextProps { name: string; CommandBus: Object; RpcBus: Object; EventBus: Object; StateBus: Object; aggregates: { [name: string]: AggregateProps; }; views: { [name: string]: ViewProps; }; services: { [name: string]: ServiceProps; }; triggers: { [name: string]: ServiceProps; }; } export interface AggregateProps { CommandBus: any; EventBus: any; StateBus: any; listen: Array; views: Array; } export interface ServiceProps { EventBus: any; StateBus: any; psubscribe: Array; targets: Array; views: Array; streams: Array; repositories: Array; } export interface ViewProps { EventBus: any; RpcBus: any; noquery: boolean; noupdate: boolean; psubscribe: Array; views: Array; repositories: Array; targets: Array; } export interface props extends Component.props { } export declare class Context extends Component.Component { aggregates: Map; views: Map & Testable; triggers: Map; services: Map; constructor(props: props); }