@looker/embed-components
Version:
45 lines (44 loc) • 3.36 kB
TypeScript
import type { PayloadAction } from '@reduxjs/toolkit';
import type { ITheme } from '@looker/sdk';
export interface ThemesState {
defaultTheme: ITheme;
themes: ITheme[];
selectedTheme: ITheme;
initialized: boolean;
error?: string;
working: boolean;
}
export declare const defaultThemesState: ThemesState;
export type SelectThemeAction = Record<'key', string>;
type SelectThemeSuccessAction = Pick<ThemesState, 'selectedTheme'>;
type SetFailureAction = Record<'error', string>;
type LoadThemeDataSuccessAction = Pick<ThemesState, 'defaultTheme' | 'themes' | 'selectedTheme'>;
export declare const THEMES_SLICE_NAME = "themes";
export declare const themesSlice: import("@reduxjs/toolkit").Slice<ThemesState, {
initAction(): void;
initSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>): void;
loadThemeDataAction(state: import("immer/dist/internal").WritableDraft<ThemesState>): void;
loadThemeDataSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<LoadThemeDataSuccessAction>): void;
selectThemeAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, _action: PayloadAction<SelectThemeAction>): void;
selectThemeSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<SelectThemeSuccessAction>): void;
setFailureAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<SetFailureAction>): void;
}, "themes">;
export declare const themeActions: import("@reduxjs/toolkit").CaseReducerActions<{
initAction(): void;
initSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>): void;
loadThemeDataAction(state: import("immer/dist/internal").WritableDraft<ThemesState>): void;
loadThemeDataSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<LoadThemeDataSuccessAction>): void;
selectThemeAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, _action: PayloadAction<SelectThemeAction>): void;
selectThemeSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<SelectThemeSuccessAction>): void;
setFailureAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<SetFailureAction>): void;
}, "themes">;
export declare const useThemeActions: () => import("@reduxjs/toolkit").CaseReducerActions<{
initAction(): void;
initSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>): void;
loadThemeDataAction(state: import("immer/dist/internal").WritableDraft<ThemesState>): void;
loadThemeDataSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<LoadThemeDataSuccessAction>): void;
selectThemeAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, _action: PayloadAction<SelectThemeAction>): void;
selectThemeSuccessAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<SelectThemeSuccessAction>): void;
setFailureAction(state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<SetFailureAction>): void;
}>, useThemesStoreState: () => ThemesState;
export {};