from blueprints.structural_sections.steel.profile_definitions.rhs_profile import RHSProfile
from blueprints.type_alias import MM

class SHSCF:
    SHSCF20x2: RHSProfile
    SHSCF25x2: RHSProfile
    SHSCF25x2_5: RHSProfile
    SHSCF25x3: RHSProfile
    SHSCF30x2: RHSProfile
    SHSCF30x2_5: RHSProfile
    SHSCF30x3: RHSProfile
    SHSCF40x2: RHSProfile
    SHSCF40x2_5: RHSProfile
    SHSCF40x3: RHSProfile
    SHSCF40x4: RHSProfile
    SHSCF50x2: RHSProfile
    SHSCF50x2_5: RHSProfile
    SHSCF50x3: RHSProfile
    SHSCF50x4: RHSProfile
    SHSCF50x5: RHSProfile
    SHSCF60x2: RHSProfile
    SHSCF60x2_5: RHSProfile
    SHSCF60x3: RHSProfile
    SHSCF60x4: RHSProfile
    SHSCF60x5: RHSProfile
    SHSCF60x6: RHSProfile
    SHSCF60x6_3: RHSProfile
    SHSCF70x2_5: RHSProfile
    SHSCF70x3: RHSProfile
    SHSCF70x4: RHSProfile
    SHSCF70x5: RHSProfile
    SHSCF70x6: RHSProfile
    SHSCF70x6_3: RHSProfile
    SHSCF80x3: RHSProfile
    SHSCF80x4: RHSProfile
    SHSCF80x5: RHSProfile
    SHSCF80x6: RHSProfile
    SHSCF80x6_3: RHSProfile
    SHSCF80x8: RHSProfile
    SHSCF90x3: RHSProfile
    SHSCF90x4: RHSProfile
    SHSCF90x5: RHSProfile
    SHSCF90x6: RHSProfile
    SHSCF90x6_3: RHSProfile
    SHSCF90x8: RHSProfile
    SHSCF100x3: RHSProfile
    SHSCF100x4: RHSProfile
    SHSCF100x5: RHSProfile
    SHSCF100x6: RHSProfile
    SHSCF100x6_3: RHSProfile
    SHSCF100x8: RHSProfile
    SHSCF100x10: RHSProfile
    SHSCF100x12: RHSProfile
    SHSCF100x12_5: RHSProfile
    SHSCF120x3: RHSProfile
    SHSCF120x4: RHSProfile
    SHSCF120x5: RHSProfile
    SHSCF120x6: RHSProfile
    SHSCF120x6_3: RHSProfile
    SHSCF120x8: RHSProfile
    SHSCF120x10: RHSProfile
    SHSCF120x12: RHSProfile
    SHSCF120x12_5: RHSProfile
    SHSCF140x4: RHSProfile
    SHSCF140x5: RHSProfile
    SHSCF140x6: RHSProfile
    SHSCF140x6_3: RHSProfile
    SHSCF140x8: RHSProfile
    SHSCF140x10: RHSProfile
    SHSCF140x12: RHSProfile
    SHSCF140x12_5: RHSProfile
    SHSCF150x4: RHSProfile
    SHSCF150x5: RHSProfile
    SHSCF150x6: RHSProfile
    SHSCF150x6_3: RHSProfile
    SHSCF150x8: RHSProfile
    SHSCF150x10: RHSProfile
    SHSCF150x12: RHSProfile
    SHSCF150x12_5: RHSProfile
    SHSCF150x16: RHSProfile
    SHSCF160x4: RHSProfile
    SHSCF160x5: RHSProfile
    SHSCF160x6: RHSProfile
    SHSCF160x6_3: RHSProfile
    SHSCF160x8: RHSProfile
    SHSCF160x10: RHSProfile
    SHSCF160x12: RHSProfile
    SHSCF160x12_5: RHSProfile
    SHSCF160x16: RHSProfile
    SHSCF180x4: RHSProfile
    SHSCF180x5: RHSProfile
    SHSCF180x6: RHSProfile
    SHSCF180x6_3: RHSProfile
    SHSCF180x8: RHSProfile
    SHSCF180x10: RHSProfile
    SHSCF180x12: RHSProfile
    SHSCF180x12_5: RHSProfile
    SHSCF180x16: RHSProfile
    SHSCF200x4: RHSProfile
    SHSCF200x5: RHSProfile
    SHSCF200x6: RHSProfile
    SHSCF200x6_3: RHSProfile
    SHSCF200x8: RHSProfile
    SHSCF200x10: RHSProfile
    SHSCF200x12: RHSProfile
    SHSCF200x12_5: RHSProfile
    SHSCF200x16: RHSProfile
    SHSCF220x5: RHSProfile
    SHSCF220x6: RHSProfile
    SHSCF220x6_3: RHSProfile
    SHSCF220x8: RHSProfile
    SHSCF220x10: RHSProfile
    SHSCF220x12: RHSProfile
    SHSCF220x12_5: RHSProfile
    SHSCF220x16: RHSProfile
    SHSCF250x5: RHSProfile
    SHSCF250x6: RHSProfile
    SHSCF250x6_3: RHSProfile
    SHSCF250x8: RHSProfile
    SHSCF250x10: RHSProfile
    SHSCF250x12: RHSProfile
    SHSCF250x12_5: RHSProfile
    SHSCF250x16: RHSProfile
    SHSCF260x6: RHSProfile
    SHSCF260x6_3: RHSProfile
    SHSCF260x8: RHSProfile
    SHSCF260x10: RHSProfile
    SHSCF260x12: RHSProfile
    SHSCF260x12_5: RHSProfile
    SHSCF260x16: RHSProfile
    SHSCF300x6: RHSProfile
    SHSCF300x6_3: RHSProfile
    SHSCF300x8: RHSProfile
    SHSCF300x10: RHSProfile
    SHSCF300x12: RHSProfile
    SHSCF300x12_5: RHSProfile
    SHSCF300x16: RHSProfile
    SHSCF350x8: RHSProfile
    SHSCF350x10: RHSProfile
    SHSCF350x12: RHSProfile
    SHSCF350x12_5: RHSProfile
    SHSCF350x16: RHSProfile
    SHSCF400x10: RHSProfile
    SHSCF400x12: RHSProfile
    SHSCF400x12_5: RHSProfile
    SHSCF400x16: RHSProfile
    SHSCF500x12_5: RHSProfile
    SHSCF500x16: RHSProfile
    SHSCF500x20: RHSProfile
    SHSCF600x12_5: RHSProfile
    SHSCF600x16: RHSProfile
    SHSCF600x20: RHSProfile

class __SHSCFProfileParameters:
    name: str
    total_height: MM
    total_width: MM
    left_wall_thickness: MM
    right_wall_thickness: MM
    top_wall_thickness: MM
    bottom_wall_thickness: MM
    top_right_outer_radius: MM
    top_left_outer_radius: MM
    bottom_right_outer_radius: MM
    bottom_left_outer_radius: MM
    top_right_inner_radius: MM
    top_left_inner_radius: MM
    bottom_right_inner_radius: MM
    bottom_left_inner_radius: MM

SHSCF_PROFILES_DATABASE: dict[str, __SHSCFProfileParameters]
