import type { PayloadAction } from '@reduxjs/toolkit';
import type { User as UserDTO, Team as TeamDTO, Project as ProjectDTO, SiteConfigDTO, Block as BlockDTO, Draft as DraftDTO, ALL_BLOCKS, TemplateSpec } from '@curvenote/blocks';
export declare const users: import("@reduxjs/toolkit").Slice<Record<string, UserDTO>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, UserDTO>>, action: PayloadAction<UserDTO>): void;
}, "usersApi">;
export declare const teams: import("@reduxjs/toolkit").Slice<Record<string, TeamDTO>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, TeamDTO>>, action: PayloadAction<TeamDTO>): void;
}, "teamsApi">;
export declare const projects: import("@reduxjs/toolkit").Slice<Record<string, ProjectDTO>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, ProjectDTO>>, action: PayloadAction<ProjectDTO>): void;
}, "projectsApi">;
export declare const siteconfigs: import("@reduxjs/toolkit").Slice<Record<string, SiteConfigDTO>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, SiteConfigDTO>>, action: PayloadAction<SiteConfigDTO>): void;
}, "siteconfigsApi">;
export declare const blocks: import("@reduxjs/toolkit").Slice<Record<string, BlockDTO>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, BlockDTO>>, action: PayloadAction<BlockDTO>): void;
}, "blocksApi">;
export declare const versions: import("@reduxjs/toolkit").Slice<Record<string, ALL_BLOCKS>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, ALL_BLOCKS>>, action: PayloadAction<ALL_BLOCKS>): void;
}, "versionsApi">;
export declare const drafts: import("@reduxjs/toolkit").Slice<Record<string, DraftDTO>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, DraftDTO>>, action: PayloadAction<DraftDTO>): void;
}, "draftsApi">;
export declare const templates: import("@reduxjs/toolkit").Slice<Record<string, TemplateSpec & {
    id: string;
}>, {
    receive(state: import("immer/dist/internal.js").WritableDraft<Record<string, TemplateSpec & {
        id: string;
    }>>, action: PayloadAction<TemplateSpec & {
        id: string;
    }>): void;
}, "templatesApi">;
export declare const apiReducer: import("redux").Reducer<import("redux").CombinedState<{
    users: Record<string, UserDTO>;
    teams: Record<string, TeamDTO>;
    projects: Record<string, ProjectDTO>;
    siteconfigs: Record<string, SiteConfigDTO>;
    blocks: Record<string, BlockDTO>;
    versions: Record<string, ALL_BLOCKS>;
    drafts: Record<string, DraftDTO>;
    templates: Record<string, TemplateSpec & {
        id: string;
    }>;
}>, import("redux").AnyAction>;
export type APIState = ReturnType<typeof apiReducer>;
//# sourceMappingURL=reducers.d.ts.map