/**
 * Copyright IBM Corp. 2024, 2025
 */

import { ruleSetInfo } from '../../apim/apim-governance-info.interface.js';

export interface GovernanceRulesetStoreState {
  governanceRulesets: Record<string, ruleSetInfo[]>;

  selectedConnection: string;
}

export interface GovernanceRulesetStoreActions {
  loadGovernanceRulesets: (
    connection_name: string,
    org_name: string,
  ) => Promise<void>;

  getGovernanceRulesets: (
    connection_name: string,
    org_name: string,
  ) => ruleSetInfo[];

  setSelectedConnection: (
    connection_name: string,
    org_name: string,
  ) => Promise<void>;

  getSelectedConnection: () => string;
}
