# INativeStorageService

- File ID: file:1it42kj:inativestorageservice-cs
- Path: NexusReader.Application/Abstractions/Services/INativeStorageService.cs
- Role: service
- Layer: application

## Purpose

Defines an application-level abstraction for platform/native key-value storage including secure and non-secure reads, writes, and removals.

## Key Details

Interface-only file that declares async Result-wrapped operations for secure and non-secure platform storage; implementations will perform the actual native persistence and security handling.

## Symbols

- INativeStorageService: Defines an application-level abstraction for platform/native key-value storage including secure and non-secure reads, writes, and removals.
- SaveStringAsync(): Persist a non-secure string value under the given key asynchronously.
- GetStringAsync(): Retrieve a non-secure string value by key asynchronously.
- SaveBoolAsync(): Persist a boolean value under the given key asynchronously.
- GetBoolAsync(): Retrieve a boolean value by key asynchronously, returning a provided default if absent.
- RemoveAsync(): Remove a non-secure entry by key from native storage asynchronously.
- SaveSecureString(): Persist a string securely (platform secure storage) under the given key asynchronously.
- GetSecureString(): Retrieve a secure string by key from platform secure storage asynchronously.
- RemoveSecureAsync(): Remove a secure entry by key from platform secure storage asynchronously.
- INativeStorageService: Abstraction for platform-specific key-value storage operations (secure and non-secure) used by application components.

## Dependencies

- No resolved dependencies.

## Calls

- No resolved calls.

## Coverage

- Symbols: 10
- Executable symbols: 8
- Executable symbols with control flow: 8
- Grounded edges: 10
- Unresolved references: 0
- Control-flow fragments: 8
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 2
- Generated diagrams: 2

## Control Flow Fragments

- SaveStringAsync: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs
- GetStringAsync: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs
- SaveBoolAsync: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs
- GetBoolAsync: 7 nodes, 7 edges, 0 jumps, 0 unsupported constructs
- RemoveAsync: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs
- SaveSecureString: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs
- GetSecureString: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs
- RemoveSecureAsync: 3 nodes, 2 edges, 0 jumps, 0 unsupported constructs

## Diagrams

### INativeStorageService Neighborhood

```mermaid
flowchart LR
    class_1owrs1t_inativestorageservice("INativeStorageService")
    file_1it42kj_inativestorageservice_cs("INativeStorageService")
    method_1070aok_getsecurestring[["GetSecureString()"]]
    method_19tpzwe_getstringasync[["GetStringAsync()"]]
    method_1oljw52_getboolasync[["GetBoolAsync()"]]
    method_1wrq6fu_savestringasync[["SaveStringAsync()"]]
    method_8lkc9b_saveboolasync[["SaveBoolAsync()"]]
    method_ne3mm3_removeasync[["RemoveAsync()"]]
    method_xfwbbe_removesecureasync[["RemoveSecureAsync()"]]
    method_zxocvw_savesecurestring[["SaveSecureString()"]]
    type_1vae1rw_inativestorageservice[/"INativeStorageService"/]
```

### INativeStorageService Execution Overview

```mermaid
flowchart TD
    class_1owrs1t_inativestorageservice("INativeStorageService")
    method_1070aok_getsecurestring[["GetSecureString()"]]
    method_19tpzwe_getstringasync[["GetStringAsync()"]]
    method_1oljw52_getboolasync[["GetBoolAsync()"]]
    method_1wrq6fu_savestringasync[["SaveStringAsync()"]]
    method_8lkc9b_saveboolasync[["SaveBoolAsync()"]]
    method_ne3mm3_removeasync[["RemoveAsync()"]]
    method_xfwbbe_removesecureasync[["RemoveSecureAsync()"]]
    method_zxocvw_savesecurestring[["SaveSecureString()"]]
    class_1owrs1t_inativestorageservice -->|contains| method_1070aok_getsecurestring
    class_1owrs1t_inativestorageservice -->|contains| method_19tpzwe_getstringasync
    class_1owrs1t_inativestorageservice -->|contains| method_1oljw52_getboolasync
    class_1owrs1t_inativestorageservice -->|contains| method_1wrq6fu_savestringasync
    class_1owrs1t_inativestorageservice -->|contains| method_8lkc9b_saveboolasync
    class_1owrs1t_inativestorageservice -->|contains| method_ne3mm3_removeasync
    class_1owrs1t_inativestorageservice -->|contains| method_xfwbbe_removesecureasync
    class_1owrs1t_inativestorageservice -->|contains| method_zxocvw_savesecurestring
```

## Diagram Validation

- Status: pass
