import {BadgeDetails, BadgeID, BadgeTypeDefinition} from './badges';

export type RHSState = string;

export type GrantModalData = {
    prefillUser?: string;
    prefillBadgeId?: string;
}

export type SubscriptionModalData = {
    mode: 'create' | 'delete';
}

export type PluginState = {
    showRHS: (() => void)| null;
    rhsView: RHSState;
    prevRhsView: RHSState;
    rhsUser: string | null;
    rhsBadge: BadgeID | null;
    rhsTypeId: number | null;
    rhsTypeName: string | null;
    createBadgeModalVisible: boolean;
    editBadgeModalData: BadgeDetails | null;
    createTypeModalVisible: boolean;
    editTypeModalData: BadgeTypeDefinition | null;
    grantModalData: GrantModalData | null;
    subscriptionModalData: SubscriptionModalData | null;
}
