#pragma once #include #include #include #include #include /* generated by fbt from .png files in images folder */ #include #include "seos.h" #include "seos_common.h" typedef void (*SeosLoadingCallback)(void* context, bool state); typedef struct { uint8_t diversifier[16]; size_t diversifier_len; uint8_t sio[128]; size_t sio_len; uint8_t priv_key[16]; uint8_t auth_key[16]; size_t adf_oid_len; uint8_t adf_oid[32]; uint8_t adf_response[80]; bool use_hardcoded; char name[SEOS_FILE_NAME_MAX_LENGTH + 1]; FuriString* load_path; SeosLoadingCallback loading_cb; void* loading_cb_ctx; Storage* storage; DialogsApp* dialogs; enum { SeosLoadSeos, SeosLoadSeader } load_type; } SeosCredential; SeosCredential* seos_credential_alloc(); void seos_credential_free(SeosCredential* seos_credential); bool seos_credential_save(SeosCredential* seos_credential, const char* dev_name); bool seos_credential_clear(SeosCredential* seos_credential); bool seos_credential_file_select(SeosCredential* seos_credential); void seos_credential_set_loading_callback( SeosCredential* seos_credential, SeosLoadingCallback callback, void* context); bool seos_credential_delete(SeosCredential* seos_credential, bool use_load_path);