type SUHit = "Nailed It" | "Success" | "Tough Choice" | "Failure" | "Cascade Failure";
type SUTableName = "NPC Action" | "Reaction" | "Morale" | "Core Mechanic" | "Group Initiative" | "Retreat" | "Critical Damage" | "Critical Injury" | "Reactor Overload" | "Area Salvage" | "Mech Salvage";
interface SUTableListing {
	label: string;
	description: string;
}
type SUTableResult = {
	hit: SUHit
	tableName: SUTableName
	table: SUTableType
	roll: number
} & SUTableListing;
type SUTableType = Record<SUHit, SUTableListing>;
declare function rollSU(tableName?: SUTableName): [SUTableResult, number];
declare const ReactorOverloadTable: SUTableType;
declare const MechSalvageTable: SUTableType;
declare const NPCTables: Partial<Record<SUTableName, SUTableType>>;
declare const PCTables: Partial<Record<SUTableName, SUTableType>>;
declare const RollTables: {
	["Core Mechanic"]: SUTableType
	pc: typeof PCTables
	npc: typeof NPCTables
};
declare const AllRollTables: Record<SUTableName, SUTableType>;
export { rollSU, SUTableType, SUTableResult, SUTableName, SUTableListing, SUHit, RollTables, ReactorOverloadTable, PCTables, NPCTables, MechSalvageTable, AllRollTables };
