import * as I from "../index";
import { Shop } from "./shop";
export interface Founder {
    readonly name: string;
    readonly shop: Shop;
}
export declare namespace Founder {
    const setName: I.ActionCreator<Founder, "SET_NAME", string>;
    const shop: I.ReferenceDefinition<"SHELVES", Founder, Shop, I.Action<"SET_NAME", string> | I.Action<"SHELVES", I.Update<string, I.Action<"SET_DESCRIPTION", string> | I.Action<"BOOKS", I.Update<number, I.Action<"TITLE", I.Action<"REPLACE", string>> | I.Action<"SET_TITLE", string> | I.Action<"SET_PRICE", number> | I.Action<"ADD_AUTHOR", string>>>>>>;
    const empty: Founder;
    const reduce: I.Reducer<Founder, I.Action<"SET_NAME", string> | I.Action<"SHELVES", I.Action<"SET_NAME", string> | I.Action<"SHELVES", I.Update<string, I.Action<"SET_DESCRIPTION", string> | I.Action<"BOOKS", I.Update<number, I.Action<"TITLE", I.Action<"REPLACE", string>> | I.Action<"SET_TITLE", string> | I.Action<"SET_PRICE", number> | I.Action<"ADD_AUTHOR", string>>>>>>>;
}
