/// <reference types="react" />
import * as React from 'react';
import * as GoodData from 'gooddata';
import { Afm, DataSource, MetadataSource, SimpleExecutorAdapter, Transformation } from '@gooddata/data-layer';
import { VisType } from '../../constants/visualizationTypes';
export interface ISimpleDataAdapterProviderProps {
    afm: Afm.IAfm;
    projectId: string;
    transformation?: Transformation.ITransformation;
    [p: string]: any;
}
export interface ISimpleDataAdapterProviderInjectedProps {
    dataSource: DataSource.IDataSource<GoodData.ISimpleExecutorResult>;
    metadataSource: MetadataSource.IMetadataSource;
}
export interface ISimpleDataAdapterProviderState {
    type: VisType;
    adapter: SimpleExecutorAdapter;
    dataSource: DataSource.IDataSource<GoodData.ISimpleExecutorResult>;
    metadataSource: MetadataSource.IMetadataSource;
}
export declare function simpleDataAdapterProvider<T>(InnerComponent: React.ComponentClass<T & ISimpleDataAdapterProviderInjectedProps>, type: VisType): React.ComponentClass<ISimpleDataAdapterProviderProps>;
