The value to validate
Type predicate indicating if the value is a valid UserSettings object
isValidUserSettings({ showHelp: true, caching: true, currencyRate: 1.0, currency: "USD", location: "US" }) // Returns true
isValidUserSettings({ showHelp: "test", caching: true, currencyRate: 1.0, currency: "USD", location: "US" }) // Returns false
export function isValidUserSettings(settings: unknown): settings is UserSettings {
const check = getUserSettingsSchema().safeParse(settings);
if (!check.success) {
console.warn("isValidUserSettings| The user settings are invalid", {
settings,
issues: zodAddActualValueToIssues(check.error.issues, settings),
});
}
return check.success;
}
Type guard to validate if a value is a valid UserSettings object. Checks for the presence and correct types of all UserSettings properties.