import type { EnterpriseSharedState } from "../shared/reducer";
import type { EnterpriseState } from "../shared/types";
import type { GroupTableAccessPolicy } from "../../../../../frontend/src/metabase-types/api";
import type { RequestState, RequestsState } from "../../../../../frontend/src/metabase-types/store";
export type GroupTableAccessPolicyParams = {
    groupId: string;
    tableId: string;
};
export interface SandboxesState extends EnterpriseState {
    requests: RequestsState & {
        plugins: {
            sandboxesPlugin: {
                policies: Record<string, RequestState>;
            };
            shared: EnterpriseSharedState;
        };
    };
    plugins: {
        sandboxingPlugin: {
            groupTableAccessPolicies: Record<string, GroupTableAccessPolicy>;
            originalGroupTableAccessPolicies: Record<string, GroupTableAccessPolicy>;
        };
        shared: EnterpriseSharedState;
    };
}
export type GroupTableAccessPolicyDraft = Pick<GroupTableAccessPolicy, "card_id" | "table_id" | "group_id"> & {
    attribute_remappings: {
        [key: string]: string | null;
    };
};
