import { Store } from 'redux';
import { JsonSchema } from './models/jsonSchema';
import { UISchemaElement } from './models/uischema';
import { ValidationState } from './reducers/validation';

export interface JsonFormsStore extends Store<any> {
}
export interface JsonFormsState {
  jsonforms: {
    common: {
      data: any;
      schema?: JsonSchema;
      uischema?: UISchemaElement;
    };
    validation?: ValidationState,
    renderers?: any[];
    fields?: any[];
    // allow additional state for JSONForms
    [x: string]: any;
  };
}

export interface JsonFormsInitialState {
  data: any;
  schema?: JsonSchema;
  uischema?: UISchemaElement;
  // allow additional state
  [x: string]: any;
}

import { Store } from 'redux';
import { JsonSchema } from './models/jsonSchema';
import { UISchemaElement } from './models/uischema';

export interface JsonFormsStore extends Store<any> {
}
export interface JsonFormsState {
  jsonforms: {
    common: {
      data: any;
      schema?: JsonSchema;
      uischema?: UISchemaElement;
    };
    renderers?: any[];
    fields?: any[];
    // allow additional state for JSONForms
    [x: string]: any;
  };
}

export interface JsonFormsInitialState {
  data: any;
  schema?: JsonSchema;
  uischema?: UISchemaElement;
  // allow additional state
  [x: string]: any;
}

--- 
+++ 
@@ -1,6 +1,7 @@
 import { Store } from 'redux';
 import { JsonSchema } from './models/jsonSchema';
 import { UISchemaElement } from './models/uischema';
+import { ValidationState } from './reducers/validation';
 
 export interface JsonFormsStore extends Store<any> {
 }
@@ -11,6 +12,7 @@
       schema?: JsonSchema;
       uischema?: UISchemaElement;
     };
+    validation?: ValidationState,
     renderers?: any[];
     fields?: any[];
     // allow additional state for JSONForms
Add validationState to JsonFormsState type
