$DigestItem: $.Shape<
    | {
        type: "Other";
        value: `0x${string}`;
    }
    | {
        type: "Consensus";
        value: readonly [ConsensusEngineIdLike, `0x${string}`];
    }
    | {
        type: "Seal";
        value: readonly [ConsensusEngineIdLike, `0x${string}`];
    }
    | {
        type: "PreRuntime";
        value: readonly [ConsensusEngineIdLike, `0x${string}`];
    }
    | {
        type: "RuntimeEnvironmentUpdated";
    },
    | {
        type: "Other";
        value: `0x${string}`;
    }
    | {
        type: "Consensus";
        value: [ConsensusEngineId, `0x${string}`];
    }
    | {
        type: "Seal";
        value: [ConsensusEngineId, `0x${string}`];
    }
    | {
        type: "PreRuntime";
        value: [ConsensusEngineId, `0x${string}`];
    }
    | {
        type: "RuntimeEnvironmentUpdated";
    }> = ...

Digest item that is able to encode/decode 'system' digest items and provide opaque access to other items.

Ref: https://github.com/paritytech/polkadot-sdk/blob/0e49ed72aa365475e30069a5c30e251a009fdacf/substrate/primitives/runtime/src/generic/digest.rs#L72-L109