Playvoi/Assets/ShiroginSDK/Runtime/Services/Interfaces/IRemoteConfigService.cs
2025-10-30 22:48:16 +03:00

40 lines
No EOL
1.3 KiB
C#

namespace ShiroginSDK.Runtime.Services.Interfaces
{
/// <summary>
/// Interface for ShiroginSDK Remote Config management.
/// Provides access to Firebase Remote Config values and refresh controls.
/// </summary>
public interface IRemoteConfigService
{
/// <summary>
/// Initializes Remote Config system using SDKConfig settings.
/// Automatically reads enableFirebaseRemoteConfig and selectedRemoteGroup.
/// </summary>
void Initialize();
/// <summary>
/// Forces a fresh fetch from Firebase, ignoring cache duration.
/// </summary>
void ForceRefresh();
/// <summary>
/// Gets an integer value from cached Remote Config JSON.
/// </summary>
int GetInt(string key, int defaultValue = 0);
/// <summary>
/// Gets a float value from cached Remote Config JSON.
/// </summary>
float GetFloat(string key, float defaultValue = 0f);
/// <summary>
/// Gets a boolean value from cached Remote Config JSON.
/// </summary>
bool GetBool(string key, bool defaultValue = false);
/// <summary>
/// Gets a string value from cached Remote Config JSON.
/// </summary>
string GetString(string key, string defaultValue = "");
}
}