import { NamedQueryState, NamedQuery } from '../../AdaptableState/NamedQueryState';
import * as Redux from 'redux';
/**
 * @ReduxAction A Named Query has been added
 */
export declare const NAMED_QUERY_READY = "NAMED_QUERY_READY";
/**
 * @ReduxAction A Named Query has been added
 */
export declare const NAMED_QUERY_ADD = "NAMED_QUERY_ADD";
/**
 * @ReduxAction Multiple Named Queries have been added
 */
export declare const NAMED_QUERIES_ADD = "NAMED_QUERY_ADD_MULTIPLE";
/**
 * @ReduxAction A Named Query has been edited
 */
export declare const NAMED_QUERY_EDIT = "NAMED_QUERY_EDIT";
/**
 * @ReduxAction A Named Query has been deleted
 */
export declare const NAMED_QUERY_DELETE = "NAMED_QUERY_DELETE";
export interface NamedQueryAction extends Redux.Action {
    namedQuery: NamedQuery;
}
export interface NamedQueryAddAction extends NamedQueryAction {
}
export interface NamedQueriesAddAction extends Redux.Action {
    namedQueries: NamedQuery[];
}
export interface NamedQueryEditAction extends NamedQueryAction {
}
export interface NamedQueryDeleteAction extends NamedQueryAction {
}
export interface NamedQueryReadyAction extends Redux.Action {
    namedQueryState: NamedQueryState;
}
export declare const NamedQueryAdd: (namedQuery: NamedQuery) => NamedQueryAddAction;
export declare const NamedQueriesAdd: (namedQueries: NamedQuery[]) => NamedQueriesAddAction;
export declare const NamedQueryEdit: (namedQuery: NamedQuery) => NamedQueryEditAction;
export declare const NamedQueryDelete: (namedQuery: NamedQuery) => NamedQueryDeleteAction;
export declare const NamedQueryReady: (namedQueryState: NamedQueryState) => NamedQueryReadyAction;
export declare const NamedQueryReducer: Redux.Reducer<NamedQueryState>;
