/// Generates a static, compile-time-fixed SA store struct.
///
/// Each SA slot is a [`ManagedSa`](crate::protocol::ManagedSa) wrapping a
/// [`SecurityAssociation`](crate::protocol::SecurityAssociation) with a specific
/// service provider and frame format. The macro generates:
/// - A struct with named `ManagedSa` fields (lifetime `'__ks` is injected automatically)
/// - Named accessor methods for each SA (immutable and mutable)
/// - A `get(spi)` / `get_mut(spi)` method for SPI-based lookup returning a generated enum
///
/// # Example
/// ```ignore
/// spacedls::make_static_sastore! {
/// pub MySas {
/// tc_enc: 0x0001 => enc AesCbc<Aes128, Pkcs7>, MyEncFmt,
/// tm_authenc: 0x0003 => authenc AesGcm<Aes128>, MyAeadFmt,
/// }
/// }
/// ```