cdktg
Version:
Agile Threat Modeling as Code
47 lines (46 loc) • 1.43 kB
TypeScript
export interface CIATriadProps {
readonly confidentiality: Confidentiality;
readonly integrity: Integrity;
readonly availability: Availability;
readonly justification?: string;
}
export declare class CIATriad {
readonly confidentiality: Confidentiality;
readonly integrity: Integrity;
readonly availability: Availability;
readonly justification?: string;
constructor(props: CIATriadProps);
hasHigherConfidentiality(confidentiality: Confidentiality): boolean;
hasHigherIntegrity(integrity: Integrity): boolean;
hasHigherAvailabilty(availability: Availability): boolean;
/**
* @internal
*/
_toThreagile(): {
confidentiality: Confidentiality;
integrity: Integrity;
availability: Availability;
justification_cia_rating: string | undefined;
};
}
export declare enum Confidentiality {
PUBLIC = "public",
INTERNAL = "internal",
RESTRICTED = "restricted",
CONFIDENTIAL = "confidential",
STRICTLY_CONFIDENTIAL = "strictly-confidential"
}
export declare enum Integrity {
ARCHIVE = "archive",
OPERATIONAL = "operational",
IMPORTANT = "important",
CRITICAL = "critical",
MISSION_CRITICAL = "mission-critical"
}
export declare enum Availability {
ARCHIVE = "archive",
OPERATIONAL = "operational",
IMPORTANT = "important",
CRITICAL = "critical",
MISSION_CRITICAL = "mission-critical"
}