Specification

struct Specification : MoEngageStorage.Specification

A collection of typed storage locations used by the SDK configuration manager.

Each property is a MoEngageStorage/ReadOnlyLocation, MoEngageStorage/WriteOnlyLocation, or composed variant that reads or writes a specific piece of SDK configuration. Locations span multiple backends — InMemoryStorage, FileStorage, UserDefaultStorage, KeychainStorage, MirroredStorage, and MigratingStorage — and the correct backend is selected automatically when the property is accessed through a bound MoEngageStorage/State.

Bind this spec to a MoEngageSDKInstance via MoEngageStorage/State to call each location without threading the instance argument through manually:

var state = MoEngageStorage.State<MoEngageConfig.Specification>()
let groupName = try state.keychainGroupName()
try state.isTestEnvironment(true)
  • Declaration

    Swift

    public static let `default`: MoEngageConfig.Specification

Removed deprecated data

  • Declaration

    Swift

    public static func snapshot() -> MoEngageStorage.FileStorage<MoEngageConfig.Snapshot>
  • Declaration

    Swift

    public static func extensionSnapshot() -> MoEngageStorage.FileStorage<MoEngageConfig.ExtensionSnapshot>
  • Declaration

    Swift

    public static func extensionSnapshotMetadata<T: Sendable>(
        key: MoEngageConfig.ExtensionSnapshot.MetaData.CodingKeys,
        atPath keyPath: WritableKeyPath<MoEngageConfig.ExtensionSnapshot.MetaData, T?> & Sendable
    ) -> MoEngageStorage.MigratingStorage<
        T?, Void, (), (), MoEngageStorage.FileStorage<MoEngageConfig.ExtensionSnapshot>.Error,
        MoEngageStorage.KeyPathStorage<
            MoEngageStorage.MappingStorage<
                MoEngageStorage.WritableOptional<MoEngageConfig.ExtensionSnapshot>,
                MoEngageConfig.ExtensionSnapshot?, MoEngageConfig.ExtensionSnapshot?,
                MoEngageStorage.FileStorage<MoEngageConfig.ExtensionSnapshot>
            >,
            WritableKeyPath<MoEngageStorage.WritableOptional<MoEngageConfig.ExtensionSnapshot>, T?>,
            T?
        >.WriteError,
        MoEngageStorage.KeyPathStorage<
            MoEngageStorage.MappingStorage<
                MoEngageStorage.WritableOptional<MoEngageConfig.ExtensionSnapshot>,
                MoEngageConfig.ExtensionSnapshot?, MoEngageConfig.ExtensionSnapshot?,
                MoEngageStorage.FileStorage<MoEngageConfig.ExtensionSnapshot>
            >,
            WritableKeyPath<MoEngageStorage.WritableOptional<MoEngageConfig.ExtensionSnapshot>, T?>,
            T?
        >.RemoveError>