Files
pluriwave/lib/l10n/gen/app_localizations.dart
T
FreeTLab a2bed18937 fix(paywall): add dismiss controls and honest premium copy
The premium sheet had no close affordance or way to defer, and its
copy only said "Función Premium" without stating what it unlocks.
Adds a header close (X) button and a "not now" secondary action so
dismissal is never harder than purchasing, and replaces the bare
title with a concrete, honest breakdown of the 5 things premium
unlocks (no ads, Android Auto, station recording, alarm vacation
ranges, unlimited alarms) plus the one-time-purchase framing. The
phone equalizer is never listed, since it stays free for everyone.
New l10n keys added to all 13 locales.
2026-08-28 22:47:53 +02:00

3488 lines
103 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import 'dart:async';
import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:intl/intl.dart' as intl;
import 'app_localizations_ar.dart';
import 'app_localizations_bn.dart';
import 'app_localizations_de.dart';
import 'app_localizations_en.dart';
import 'app_localizations_es.dart';
import 'app_localizations_fr.dart';
import 'app_localizations_hi.dart';
import 'app_localizations_id.dart';
import 'app_localizations_it.dart';
import 'app_localizations_ja.dart';
import 'app_localizations_pt.dart';
import 'app_localizations_ru.dart';
import 'app_localizations_zh.dart';
// ignore_for_file: type=lint
/// Callers can lookup localized strings with an instance of AppLocalizations
/// returned by `AppLocalizations.of(context)`.
///
/// Applications need to include `AppLocalizations.delegate()` in their app's
/// `localizationDelegates` list, and the locales they support in the app's
/// `supportedLocales` list. For example:
///
/// ```dart
/// import 'gen/app_localizations.dart';
///
/// return MaterialApp(
/// localizationsDelegates: AppLocalizations.localizationsDelegates,
/// supportedLocales: AppLocalizations.supportedLocales,
/// home: MyApplicationHome(),
/// );
/// ```
///
/// ## Update pubspec.yaml
///
/// Please make sure to update your pubspec.yaml to include the following
/// packages:
///
/// ```yaml
/// dependencies:
/// # Internationalization support.
/// flutter_localizations:
/// sdk: flutter
/// intl: any # Use the pinned version from flutter_localizations
///
/// # Rest of dependencies
/// ```
///
/// ## iOS Applications
///
/// iOS applications define key application metadata, including supported
/// locales, in an Info.plist file that is built into the application bundle.
/// To configure the locales supported by your app, youll need to edit this
/// file.
///
/// First, open your projects ios/Runner.xcworkspace Xcode workspace file.
/// Then, in the Project Navigator, open the Info.plist file under the Runner
/// projects Runner folder.
///
/// Next, select the Information Property List item, select Add Item from the
/// Editor menu, then select Localizations from the pop-up menu.
///
/// Select and expand the newly-created Localizations item then, for each
/// locale your application supports, add a new item and select the locale
/// you wish to add from the pop-up menu in the Value field. This list should
/// be consistent with the languages listed in the AppLocalizations.supportedLocales
/// property.
abstract class AppLocalizations {
AppLocalizations(String locale)
: localeName = intl.Intl.canonicalizedLocale(locale.toString());
final String localeName;
static AppLocalizations of(BuildContext context) {
return Localizations.of<AppLocalizations>(context, AppLocalizations)!;
}
static const LocalizationsDelegate<AppLocalizations> delegate =
_AppLocalizationsDelegate();
/// A list of this localizations delegate along with the default localizations
/// delegates.
///
/// Returns a list of localizations delegates containing this delegate along with
/// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,
/// and GlobalWidgetsLocalizations.delegate.
///
/// Additional delegates can be added by appending to this list in
/// MaterialApp. This list does not have to be used at all if a custom list
/// of delegates is preferred or required.
static const List<LocalizationsDelegate<dynamic>> localizationsDelegates =
<LocalizationsDelegate<dynamic>>[
delegate,
GlobalMaterialLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
];
/// A list of this localizations delegate's supported locales.
static const List<Locale> supportedLocales = <Locale>[
Locale('ar'),
Locale('bn'),
Locale('de'),
Locale('en'),
Locale('es'),
Locale('fr'),
Locale('hi'),
Locale('id'),
Locale('it'),
Locale('ja'),
Locale('pt'),
Locale('ru'),
Locale('zh'),
];
/// No description provided for @appTitle.
///
/// In es, this message translates to:
/// **'PluriWave'**
String get appTitle;
/// No description provided for @navHome.
///
/// In es, this message translates to:
/// **'Escuchar'**
String get navHome;
/// No description provided for @navSearch.
///
/// In es, this message translates to:
/// **'Buscar'**
String get navSearch;
/// No description provided for @navFavorites.
///
/// In es, this message translates to:
/// **'Favoritos'**
String get navFavorites;
/// No description provided for @navAlarms.
///
/// In es, this message translates to:
/// **'Alarmas'**
String get navAlarms;
/// No description provided for @navSettings.
///
/// In es, this message translates to:
/// **'Ajustes'**
String get navSettings;
/// No description provided for @actionOk.
///
/// In es, this message translates to:
/// **'OK'**
String get actionOk;
/// No description provided for @sleepTimer.
///
/// In es, this message translates to:
/// **'Timer de sueño'**
String get sleepTimer;
/// No description provided for @sleepTimerDescription.
///
/// In es, this message translates to:
/// **'Apagado suave de la radio con cuenta atrás exacta.'**
String get sleepTimerDescription;
/// No description provided for @cancelTimer.
///
/// In es, this message translates to:
/// **'Cancelar timer'**
String get cancelTimer;
/// No description provided for @optionOther.
///
/// In es, this message translates to:
/// **'Otro'**
String get optionOther;
/// No description provided for @customDurationTitle.
///
/// In es, this message translates to:
/// **'Duración personalizada'**
String get customDurationTitle;
/// No description provided for @durationGreaterThanZero.
///
/// In es, this message translates to:
/// **'Elegí una duración mayor que cero.'**
String get durationGreaterThanZero;
/// No description provided for @hoursLabel.
///
/// In es, this message translates to:
/// **'Horas'**
String get hoursLabel;
/// No description provided for @minutesLabel.
///
/// In es, this message translates to:
/// **'Minutos'**
String get minutesLabel;
/// No description provided for @secondsLabel.
///
/// In es, this message translates to:
/// **'Segundos'**
String get secondsLabel;
/// No description provided for @durationHoursMinutesSeconds.
///
/// In es, this message translates to:
/// **'{hours} h {minutes} min {seconds} s'**
String durationHoursMinutesSeconds(
Object hours,
Object minutes,
Object seconds,
);
/// No description provided for @durationMinutesSeconds.
///
/// In es, this message translates to:
/// **'{minutes} min {seconds} s'**
String durationMinutesSeconds(Object minutes, Object seconds);
/// No description provided for @durationMinutesOnly.
///
/// In es, this message translates to:
/// **'{minutes} min'**
String durationMinutesOnly(Object minutes);
/// No description provided for @durationSecondsOnly.
///
/// In es, this message translates to:
/// **'{seconds} s'**
String durationSecondsOnly(Object seconds);
/// No description provided for @saveQuickAccess.
///
/// In es, this message translates to:
/// **'Guardar como acceso rápido'**
String get saveQuickAccess;
/// No description provided for @startTimer.
///
/// In es, this message translates to:
/// **'Iniciar timer'**
String get startTimer;
/// No description provided for @skipCurrentAlarmExecution.
///
/// In es, this message translates to:
/// **'Omitida esta ejecución de {alarmName}.'**
String skipCurrentAlarmExecution(Object alarmName);
/// No description provided for @settingsTitle.
///
/// In es, this message translates to:
/// **'Ajustes'**
String get settingsTitle;
/// No description provided for @settingsSubtitle.
///
/// In es, this message translates to:
/// **'Control fino de sonido, copias de seguridad y emisoras personalizadas.'**
String get settingsSubtitle;
/// No description provided for @settingsGroupAudioTitle.
///
/// In es, this message translates to:
/// **'AUDIO'**
String get settingsGroupAudioTitle;
/// No description provided for @settingsGroupStationsTitle.
///
/// In es, this message translates to:
/// **'EMISORAS'**
String get settingsGroupStationsTitle;
/// No description provided for @settingsGroupRecordingsTitle.
///
/// In es, this message translates to:
/// **'GRABACIONES Y MÚSICA'**
String get settingsGroupRecordingsTitle;
/// No description provided for @settingsGroupApplicationTitle.
///
/// In es, this message translates to:
/// **'APLICACIÓN'**
String get settingsGroupApplicationTitle;
/// No description provided for @infoSectionTitle.
///
/// In es, this message translates to:
/// **'Información'**
String get infoSectionTitle;
/// No description provided for @languageSectionTitle.
///
/// In es, this message translates to:
/// **'Idioma'**
String get languageSectionTitle;
/// No description provided for @languageSectionDescription.
///
/// In es, this message translates to:
/// **'Elegí cómo se muestra el idioma de la app.'**
String get languageSectionDescription;
/// No description provided for @languageSystemDefault.
///
/// In es, this message translates to:
/// **'Sistema'**
String get languageSystemDefault;
/// No description provided for @languageSpanish.
///
/// In es, this message translates to:
/// **'Español'**
String get languageSpanish;
/// No description provided for @languageEnglish.
///
/// In es, this message translates to:
/// **'Inglés'**
String get languageEnglish;
/// No description provided for @languageUpdated.
///
/// In es, this message translates to:
/// **'Idioma actualizado: {languageName}'**
String languageUpdated(Object languageName);
/// No description provided for @languageUpdatedSystem.
///
/// In es, this message translates to:
/// **'Idioma actualizado: Sistema'**
String get languageUpdatedSystem;
/// No description provided for @timerSectionTitle.
///
/// In es, this message translates to:
/// **'Timer de sueño'**
String get timerSectionTitle;
/// No description provided for @timerSectionAdd.
///
/// In es, this message translates to:
/// **'Añadir'**
String get timerSectionAdd;
/// No description provided for @timerSectionDescription.
///
/// In es, this message translates to:
/// **'Personalizá los accesos rápidos que aparecen al apagar la radio automáticamente.'**
String get timerSectionDescription;
/// No description provided for @timerSectionRestoreRecommended.
///
/// In es, this message translates to:
/// **'Restaurar tiempos recomendados'**
String get timerSectionRestoreRecommended;
/// No description provided for @newQuickAccessTitle.
///
/// In es, this message translates to:
/// **'Nuevo acceso rápido'**
String get newQuickAccessTitle;
/// No description provided for @saveQuickAccessButton.
///
/// In es, this message translates to:
/// **'Guardar acceso rápido'**
String get saveQuickAccessButton;
/// No description provided for @settingsSafeStatus.
///
/// In es, this message translates to:
/// **'Seguro'**
String get settingsSafeStatus;
/// No description provided for @recordingsSectionTitle.
///
/// In es, this message translates to:
/// **'Grabaciones'**
String get recordingsSectionTitle;
/// No description provided for @recordingsFolderDialogTitle.
///
/// In es, this message translates to:
/// **'Selecciona la carpeta de grabaciones'**
String get recordingsFolderDialogTitle;
/// No description provided for @recordingsPathUpdated.
///
/// In es, this message translates to:
/// **'Ruta de grabación actualizada'**
String get recordingsPathUpdated;
/// No description provided for @recordingsPathSaveError.
///
/// In es, this message translates to:
/// **'No se pudo guardar la ruta: {error}'**
String recordingsPathSaveError(Object error);
/// No description provided for @recordingsDefaultFolderRestored.
///
/// In es, this message translates to:
/// **'Se usará la carpeta interna por defecto'**
String get recordingsDefaultFolderRestored;
/// No description provided for @recordingsFolderTitle.
///
/// In es, this message translates to:
/// **'Carpeta de grabación'**
String get recordingsFolderTitle;
/// No description provided for @recordingsPathCalculating.
///
/// In es, this message translates to:
/// **'Calculando ruta...'**
String get recordingsPathCalculating;
/// No description provided for @recordingsChangePath.
///
/// In es, this message translates to:
/// **'Cambiar ruta'**
String get recordingsChangePath;
/// No description provided for @recordingsUseDefaultPath.
///
/// In es, this message translates to:
/// **'Usar ruta por defecto'**
String get recordingsUseDefaultPath;
/// No description provided for @recordingsOriginalStreamHint.
///
/// In es, this message translates to:
/// **'La radio se guarda desde el stream original, sin recomprimir.'**
String get recordingsOriginalStreamHint;
/// No description provided for @equalizerActive.
///
/// In es, this message translates to:
/// **'Activo'**
String get equalizerActive;
/// No description provided for @equalizerDisabled.
///
/// In es, this message translates to:
/// **'Desactivado'**
String get equalizerDisabled;
/// No description provided for @equalizerEnable.
///
/// In es, this message translates to:
/// **'Activar ecualizador'**
String get equalizerEnable;
/// No description provided for @equalizerRealtimeSubtitle.
///
/// In es, this message translates to:
/// **'Los cambios se aplican en tiempo real a la emisora actual.'**
String get equalizerRealtimeSubtitle;
/// No description provided for @equalizerPendingSubtitle.
///
/// In es, this message translates to:
/// **'Se guardan los cambios y se aplicarán cuando Android habilite el efecto.'**
String get equalizerPendingSubtitle;
/// No description provided for @equalizerPerStationTitle.
///
/// In es, this message translates to:
/// **'Usar EQ propio para esta favorita'**
String get equalizerPerStationTitle;
/// No description provided for @equalizerPerStationActive.
///
/// In es, this message translates to:
/// **'Activo para {stationName}'**
String equalizerPerStationActive(Object stationName);
/// No description provided for @equalizerPerStationMain.
///
/// In es, this message translates to:
/// **'Usando EQ principal para {stationName}'**
String equalizerPerStationMain(Object stationName);
/// No description provided for @equalizerBaseExplainer.
///
/// In es, this message translates to:
/// **'Este es el ecualizador base: se aplica a todas las emisoras que no tengan un ajuste propio. El de una emisora concreta se define desde su propia reproducción y manda sobre este.'**
String get equalizerBaseExplainer;
/// No description provided for @equalizerActiveOutputLabel.
///
/// In es, this message translates to:
/// **'Salida activa'**
String get equalizerActiveOutputLabel;
/// No description provided for @equalizerActiveOutputDefault.
///
/// In es, this message translates to:
/// **'El altavoz de este dispositivo'**
String get equalizerActiveOutputDefault;
/// No description provided for @equalizerStationsWithOwnEqTitle.
///
/// In es, this message translates to:
/// **'Emisoras con ajuste propio'**
String get equalizerStationsWithOwnEqTitle;
/// No description provided for @equalizerStationsWithOwnEqSubtitle.
///
/// In es, this message translates to:
/// **'Ignoran este ecualizador base'**
String get equalizerStationsWithOwnEqSubtitle;
/// No description provided for @equalizerStationsWithOwnEqEmpty.
///
/// In es, this message translates to:
/// **'Ninguna emisora tiene ajuste propio todavía.'**
String get equalizerStationsWithOwnEqEmpty;
/// No description provided for @equalizerSaveAsPresetAction.
///
/// In es, this message translates to:
/// **'Guardar como preset'**
String get equalizerSaveAsPresetAction;
/// No description provided for @equalizerResetToFlatAction.
///
/// In es, this message translates to:
/// **'Restablecer a plano'**
String get equalizerResetToFlatAction;
/// No description provided for @equalizerSavePresetDialogTitle.
///
/// In es, this message translates to:
/// **'Guardar como preset'**
String get equalizerSavePresetDialogTitle;
/// No description provided for @equalizerSavePresetNameLabel.
///
/// In es, this message translates to:
/// **'Nombre del preset'**
String get equalizerSavePresetNameLabel;
/// No description provided for @equalizerSavePresetEmptyNameError.
///
/// In es, this message translates to:
/// **'Ingresá un nombre para el preset.'**
String get equalizerSavePresetEmptyNameError;
/// No description provided for @equalizerSavePresetConfirm.
///
/// In es, this message translates to:
/// **'Guardar'**
String get equalizerSavePresetConfirm;
/// No description provided for @preferredStationTitle.
///
/// In es, this message translates to:
/// **'Emisora preferida'**
String get preferredStationTitle;
/// No description provided for @preferredStationDescription.
///
/// In es, this message translates to:
/// **'Se preselecciona al crear alarmas y puede iniciarse como reproducción rápida.'**
String get preferredStationDescription;
/// No description provided for @preferredStationNoStationsTitle.
///
/// In es, this message translates to:
/// **'Todavía no hay emisoras disponibles'**
String get preferredStationNoStationsTitle;
/// No description provided for @preferredStationNoStationsSubtitle.
///
/// In es, this message translates to:
/// **'Guardá favoritas o cargá emisoras para elegir una preferida.'**
String get preferredStationNoStationsSubtitle;
/// No description provided for @preferredStationAutomaticFallback.
///
/// In es, this message translates to:
/// **'Fallback automático'**
String get preferredStationAutomaticFallback;
/// No description provided for @preferredStationDefaultFavorite.
///
/// In es, this message translates to:
/// **'Favorita por defecto'**
String get preferredStationDefaultFavorite;
/// No description provided for @preferredStationCurrent.
///
/// In es, this message translates to:
/// **'Preferida actual: {stationName}'**
String preferredStationCurrent(Object stationName);
/// No description provided for @preferredStationAutoUsing.
///
/// In es, this message translates to:
/// **'Sin favoritas: usando automáticamente {stationName}'**
String preferredStationAutoUsing(Object stationName);
/// No description provided for @preferredStationPlay.
///
/// In es, this message translates to:
/// **'Reproducir preferida'**
String get preferredStationPlay;
/// No description provided for @customStationsTitle.
///
/// In es, this message translates to:
/// **'Emisoras personalizadas'**
String get customStationsTitle;
/// No description provided for @customStationsAdd.
///
/// In es, this message translates to:
/// **'Añadir'**
String get customStationsAdd;
/// No description provided for @customStationsEmpty.
///
/// In es, this message translates to:
/// **'No hay emisoras personalizadas.'**
String get customStationsEmpty;
/// No description provided for @playAction.
///
/// In es, this message translates to:
/// **'Reproducir'**
String get playAction;
/// No description provided for @deleteAction.
///
/// In es, this message translates to:
/// **'Eliminar'**
String get deleteAction;
/// No description provided for @addStationTitle.
///
/// In es, this message translates to:
/// **'Añadir emisora'**
String get addStationTitle;
/// No description provided for @stationNameLabel.
///
/// In es, this message translates to:
/// **'Nombre *'**
String get stationNameLabel;
/// No description provided for @unnamedStation.
///
/// In es, this message translates to:
/// **'Sin nombre'**
String get unnamedStation;
/// No description provided for @requiredField.
///
/// In es, this message translates to:
/// **'Campo obligatorio'**
String get requiredField;
/// No description provided for @streamUrlLabel.
///
/// In es, this message translates to:
/// **'URL del stream *'**
String get streamUrlLabel;
/// No description provided for @invalidUrl.
///
/// In es, this message translates to:
/// **'URL no válida'**
String get invalidUrl;
/// No description provided for @countryOptionalLabel.
///
/// In es, this message translates to:
/// **'País (opcional)'**
String get countryOptionalLabel;
/// No description provided for @saveStation.
///
/// In es, this message translates to:
/// **'Guardar emisora'**
String get saveStation;
/// No description provided for @backupSectionTitle.
///
/// In es, this message translates to:
/// **'Copia de seguridad'**
String get backupSectionTitle;
/// No description provided for @backupExportTitle.
///
/// In es, this message translates to:
/// **'Exportar configuración'**
String get backupExportTitle;
/// No description provided for @backupExportSubtitle.
///
/// In es, this message translates to:
/// **'Favoritos, emisoras custom y presets de EQ'**
String get backupExportSubtitle;
/// No description provided for @backupImportTitle.
///
/// In es, this message translates to:
/// **'Importar configuración'**
String get backupImportTitle;
/// No description provided for @backupImportSubtitle.
///
/// In es, this message translates to:
/// **'Restaurar desde un fichero de copia de seguridad'**
String get backupImportSubtitle;
/// No description provided for @backupShareSubject.
///
/// In es, this message translates to:
/// **'PluriWave — copia de seguridad'**
String get backupShareSubject;
/// No description provided for @backupShareText.
///
/// In es, this message translates to:
/// **'Configuración de PluriWave exportada el {date}'**
String backupShareText(Object date);
/// No description provided for @backupExportError.
///
/// In es, this message translates to:
/// **'Error al exportar: {error}'**
String backupExportError(Object error);
/// No description provided for @backupImportConfirmMessage.
///
/// In es, this message translates to:
/// **'Esto añadirá los favoritos, emisoras y presets del fichero. ¿Continuar?'**
String get backupImportConfirmMessage;
/// No description provided for @backupImportSuccess.
///
/// In es, this message translates to:
/// **'Configuración importada correctamente'**
String get backupImportSuccess;
/// No description provided for @backupImportError.
///
/// In es, this message translates to:
/// **'Error al importar: {error}'**
String backupImportError(Object error);
/// No description provided for @appVersionLoading.
///
/// In es, this message translates to:
/// **'Cargando versión...'**
String get appVersionLoading;
/// No description provided for @appVersionSubtitle.
///
/// In es, this message translates to:
/// **'{version} - Radio mundial'**
String appVersionSubtitle(Object version);
/// No description provided for @savedFavoritesTitle.
///
/// In es, this message translates to:
/// **'Favoritos guardados'**
String get savedFavoritesTitle;
/// No description provided for @stationFilterTitle.
///
/// In es, this message translates to:
/// **'Filtro de emisoras'**
String get stationFilterTitle;
/// No description provided for @stationFilterSubtitle.
///
/// In es, this message translates to:
/// **'Solo emisoras verificadas como activas'**
String get stationFilterSubtitle;
/// No description provided for @backgroundAudioTitle.
///
/// In es, this message translates to:
/// **'Audio en background'**
String get backgroundAudioTitle;
/// No description provided for @backgroundAudioSubtitle.
///
/// In es, this message translates to:
/// **'Continúa al apagar la pantalla'**
String get backgroundAudioSubtitle;
/// No description provided for @dash.
///
/// In es, this message translates to:
/// **'—'**
String get dash;
/// No description provided for @cancelAction.
///
/// In es, this message translates to:
/// **'Cancelar'**
String get cancelAction;
/// No description provided for @equalizerTitle.
///
/// In es, this message translates to:
/// **'Ecualizador'**
String get equalizerTitle;
/// No description provided for @recordingsOpenFolder.
///
/// In es, this message translates to:
/// **'Abrir carpeta'**
String get recordingsOpenFolder;
/// No description provided for @recordingsOpenFolderError.
///
/// In es, this message translates to:
/// **'No se pudo abrir la carpeta: {error}'**
String recordingsOpenFolderError(Object error);
/// No description provided for @recordingsMaxSizeTitle.
///
/// In es, this message translates to:
/// **'Tamaño máximo de grabación'**
String get recordingsMaxSizeTitle;
/// No description provided for @recordingsMaxSizeSubtitle.
///
/// In es, this message translates to:
/// **'Límite actual: {size} MB'**
String recordingsMaxSizeSubtitle(int size);
/// No description provided for @recordingsMaxSizeDialogTitle.
///
/// In es, this message translates to:
/// **'Tamaño máximo por grabación'**
String get recordingsMaxSizeDialogTitle;
/// No description provided for @recordingsMaxSizeMbLabel.
///
/// In es, this message translates to:
/// **'Megabytes máximos'**
String get recordingsMaxSizeMbLabel;
/// No description provided for @recordingsMaxSizeSaved.
///
/// In es, this message translates to:
/// **'Límite de grabación actualizado a {size} MB'**
String recordingsMaxSizeSaved(int size);
/// No description provided for @recordingsLibraryTitle.
///
/// In es, this message translates to:
/// **'Mis grabaciones'**
String get recordingsLibraryTitle;
/// No description provided for @recordingsLibraryStorageCaption.
///
/// In es, this message translates to:
/// **'{usedMb} MB de {totalMb} MB usados'**
String recordingsLibraryStorageCaption(int usedMb, int totalMb);
/// No description provided for @recordingsLibraryStorageFolderCaption.
///
/// In es, this message translates to:
/// **'Music/PluriWave · se borran las más antiguas al llegar al límite'**
String get recordingsLibraryStorageFolderCaption;
/// No description provided for @recordingsLibraryEmptyTitle.
///
/// In es, this message translates to:
/// **'Todavía no hay grabaciones'**
String get recordingsLibraryEmptyTitle;
/// No description provided for @recordingsLibraryEmptySubtitle.
///
/// In es, this message translates to:
/// **'Las grabaciones que guardes van a aparecer acá.'**
String get recordingsLibraryEmptySubtitle;
/// No description provided for @recordingActionRename.
///
/// In es, this message translates to:
/// **'Renombrar'**
String get recordingActionRename;
/// No description provided for @recordingActionShare.
///
/// In es, this message translates to:
/// **'Compartir'**
String get recordingActionShare;
/// No description provided for @recordingActionDelete.
///
/// In es, this message translates to:
/// **'Eliminar'**
String get recordingActionDelete;
/// No description provided for @recordingRenameDialogTitle.
///
/// In es, this message translates to:
/// **'Renombrar grabación'**
String get recordingRenameDialogTitle;
/// No description provided for @recordingRenameLabel.
///
/// In es, this message translates to:
/// **'Nombre'**
String get recordingRenameLabel;
/// No description provided for @recordingRenameEmptyError.
///
/// In es, this message translates to:
/// **'Ingresá un nombre'**
String get recordingRenameEmptyError;
/// No description provided for @recordingDeleteConfirmTitle.
///
/// In es, this message translates to:
/// **'¿Eliminar grabación?'**
String get recordingDeleteConfirmTitle;
/// No description provided for @recordingDeleteConfirmMessage.
///
/// In es, this message translates to:
/// **'Esta acción no se puede deshacer.'**
String get recordingDeleteConfirmMessage;
/// No description provided for @recordingsLibrarySettingsTooltip.
///
/// In es, this message translates to:
/// **'Ajustes de grabación'**
String get recordingsLibrarySettingsTooltip;
/// No description provided for @stationOrderTitle.
///
/// In es, this message translates to:
/// **'Orden de emisoras'**
String get stationOrderTitle;
/// No description provided for @stationOrderByName.
///
/// In es, this message translates to:
/// **'Por nombre'**
String get stationOrderByName;
/// No description provided for @stationOrderByQuality.
///
/// In es, this message translates to:
/// **'Por calidad'**
String get stationOrderByQuality;
/// No description provided for @stationOrderByPopularity.
///
/// In es, this message translates to:
/// **'Por popularidad'**
String get stationOrderByPopularity;
/// No description provided for @stationOrderScopeDescription.
///
/// In es, this message translates to:
/// **'Se aplica a favoritos, búsquedas, emisoras cercanas y listados rápidos.'**
String get stationOrderScopeDescription;
/// No description provided for @favoriteGroupsTitle.
///
/// In es, this message translates to:
/// **'Listas de favoritos'**
String get favoriteGroupsTitle;
/// No description provided for @favoriteGroupsDescription.
///
/// In es, this message translates to:
/// **'Creá listas cortas para organizar tus emisoras guardadas.'**
String get favoriteGroupsDescription;
/// No description provided for @favoriteGroupsAdd.
///
/// In es, this message translates to:
/// **'Añadir lista'**
String get favoriteGroupsAdd;
/// No description provided for @favoriteGroupsEdit.
///
/// In es, this message translates to:
/// **'Editar lista'**
String get favoriteGroupsEdit;
/// No description provided for @favoriteGroupsDelete.
///
/// In es, this message translates to:
/// **'Eliminar lista'**
String get favoriteGroupsDelete;
/// No description provided for @favoriteGroupsNameLabel.
///
/// In es, this message translates to:
/// **'Nombre de la lista'**
String get favoriteGroupsNameLabel;
/// No description provided for @favoriteGroupsNameTooLong.
///
/// In es, this message translates to:
/// **'Máximo 28 caracteres.'**
String get favoriteGroupsNameTooLong;
/// No description provided for @favoriteGroupsUnassigned.
///
/// In es, this message translates to:
/// **'Sin asignar'**
String get favoriteGroupsUnassigned;
/// No description provided for @favoriteGroupsProtectedHint.
///
/// In es, this message translates to:
/// **'Lista por defecto: no se puede editar ni borrar.'**
String get favoriteGroupsProtectedHint;
/// No description provided for @favoriteGroupsCreated.
///
/// In es, this message translates to:
/// **'Lista creada'**
String get favoriteGroupsCreated;
/// No description provided for @favoriteGroupsUpdated.
///
/// In es, this message translates to:
/// **'Lista actualizada'**
String get favoriteGroupsUpdated;
/// No description provided for @favoriteGroupsDeleted.
///
/// In es, this message translates to:
/// **'Lista eliminada; sus emisoras vuelven a Sin asignar.'**
String get favoriteGroupsDeleted;
/// No description provided for @favoriteGroupsAssign.
///
/// In es, this message translates to:
/// **'Mover a lista'**
String get favoriteGroupsAssign;
/// No description provided for @favoriteGroupsAssignSubtitle.
///
/// In es, this message translates to:
/// **'Lista actual: {groupName}'**
String favoriteGroupsAssignSubtitle(Object groupName);
/// No description provided for @favoriteGroupsAssigned.
///
/// In es, this message translates to:
/// **'{stationName} movida a {groupName}'**
String favoriteGroupsAssigned(Object stationName, Object groupName);
/// No description provided for @favoritesTitle.
///
/// In es, this message translates to:
/// **'Favoritos'**
String get favoritesTitle;
/// No description provided for @favoritesEmptyTitle.
///
/// In es, this message translates to:
/// **'Sin favoritos aún'**
String get favoritesEmptyTitle;
/// No description provided for @favoritesEmptySubtitle.
///
/// In es, this message translates to:
/// **'Tocá el corazón en cualquier emisora para guardarla en tu colección.'**
String get favoritesEmptySubtitle;
/// No description provided for @favoritesHeaderSubtitle.
///
/// In es, this message translates to:
/// **'Organizá tu colección por listas y dejá cerca las radios importantes.'**
String get favoritesHeaderSubtitle;
/// No description provided for @favoritesCollection.
///
/// In es, this message translates to:
/// **'Colección'**
String get favoritesCollection;
/// No description provided for @favoritesSavedCount.
///
/// In es, this message translates to:
/// **'{count} guardadas'**
String favoritesSavedCount(int count);
/// No description provided for @favoritesRemoveTooltip.
///
/// In es, this message translates to:
/// **'Eliminar de favoritos'**
String get favoritesRemoveTooltip;
/// No description provided for @favoritesRemovedMessage.
///
/// In es, this message translates to:
/// **'{stationName} eliminada de favoritos'**
String favoritesRemovedMessage(Object stationName);
/// No description provided for @favoritesFilterAllLabel.
///
/// In es, this message translates to:
/// **'Todas'**
String get favoritesFilterAllLabel;
/// No description provided for @favoriteGroupsChipLabel.
///
/// In es, this message translates to:
/// **'{groupName} · {count}'**
String favoriteGroupsChipLabel(Object groupName, int count);
/// No description provided for @favoriteGroupsManage.
///
/// In es, this message translates to:
/// **'Gestionar listas'**
String get favoriteGroupsManage;
/// No description provided for @customStationsAddCta.
///
/// In es, this message translates to:
/// **'Añadir emisora personalizada'**
String get customStationsAddCta;
/// No description provided for @alarmPostponedCurrentExecution.
///
/// In es, this message translates to:
/// **'Alarma pospuesta para esta ejecución.'**
String get alarmPostponedCurrentExecution;
/// No description provided for @searchScreenTitle.
///
/// In es, this message translates to:
/// **'Buscar señal'**
String get searchScreenTitle;
/// No description provided for @searchScreenSubtitle.
///
/// In es, this message translates to:
/// **'Encontrá radios por nombre, país o idioma con filtros rápidos y alto contraste.'**
String get searchScreenSubtitle;
/// No description provided for @searchFiltersLabel.
///
/// In es, this message translates to:
/// **'Filtros'**
String get searchFiltersLabel;
/// No description provided for @searchHint.
///
/// In es, this message translates to:
/// **'Radio Horizonte, jazz, noticias...'**
String get searchHint;
/// No description provided for @searchCountryFilterLabel.
///
/// In es, this message translates to:
/// **'País'**
String get searchCountryFilterLabel;
/// No description provided for @searchLanguageFilterLabel.
///
/// In es, this message translates to:
/// **'Idioma'**
String get searchLanguageFilterLabel;
/// No description provided for @searchMinQualityFilterLabel.
///
/// In es, this message translates to:
/// **'Calidad mínima'**
String get searchMinQualityFilterLabel;
/// No description provided for @searchLoadingStationsLabel.
///
/// In es, this message translates to:
/// **'BUSCANDO EMISORAS…'**
String get searchLoadingStationsLabel;
/// No description provided for @searchEmptyTitle.
///
/// In es, this message translates to:
/// **'Buscá una emisora'**
String get searchEmptyTitle;
/// No description provided for @searchNoResultsTitle.
///
/// In es, this message translates to:
/// **'Sin resultados'**
String get searchNoResultsTitle;
/// No description provided for @searchNoResultsForQueryTitle.
///
/// In es, this message translates to:
/// **'Sin resultados para «{query}»'**
String searchNoResultsForQueryTitle(Object query);
/// No description provided for @searchEmptySubtitle.
///
/// In es, this message translates to:
/// **'Usá la barra superior o los chips para descubrir señales de todo el mundo.'**
String get searchEmptySubtitle;
/// No description provided for @searchNoResultsSubtitle.
///
/// In es, this message translates to:
/// **'Probá quitar filtros o escribir otro nombre para encontrar una señal activa.'**
String get searchNoResultsSubtitle;
/// No description provided for @searchResultsCount.
///
/// In es, this message translates to:
/// **'{count, plural, =1{1 resultado} other{{count} resultados}}'**
String searchResultsCount(num count);
/// No description provided for @searchClearFiltersAction.
///
/// In es, this message translates to:
/// **'{count, plural, =1{Quitar el filtro} other{Quitar los {count} filtros}}'**
String searchClearFiltersAction(num count);
/// No description provided for @countriesScreenTitle.
///
/// In es, this message translates to:
/// **'Países'**
String get countriesScreenTitle;
/// No description provided for @countriesSearchHint.
///
/// In es, this message translates to:
/// **'País o código...'**
String get countriesSearchHint;
/// No description provided for @countriesYourLanguagesTitle.
///
/// In es, this message translates to:
/// **'Tus idiomas'**
String get countriesYourLanguagesTitle;
/// No description provided for @countriesAllTitle.
///
/// In es, this message translates to:
/// **'Todos los países'**
String get countriesAllTitle;
/// No description provided for @radioCountriesError.
///
/// In es, this message translates to:
/// **'No pudimos cargar los países.'**
String get radioCountriesError;
/// No description provided for @countrySpain.
///
/// In es, this message translates to:
/// **'España'**
String get countrySpain;
/// No description provided for @countryUsa.
///
/// In es, this message translates to:
/// **'EE. UU.'**
String get countryUsa;
/// No description provided for @countryMexico.
///
/// In es, this message translates to:
/// **'México'**
String get countryMexico;
/// No description provided for @countryArgentina.
///
/// In es, this message translates to:
/// **'Argentina'**
String get countryArgentina;
/// No description provided for @countryUk.
///
/// In es, this message translates to:
/// **'Reino Unido'**
String get countryUk;
/// No description provided for @countryFrance.
///
/// In es, this message translates to:
/// **'Francia'**
String get countryFrance;
/// No description provided for @countryGermany.
///
/// In es, this message translates to:
/// **'Alemania'**
String get countryGermany;
/// No description provided for @countryItaly.
///
/// In es, this message translates to:
/// **'Italia'**
String get countryItaly;
/// No description provided for @countryBrazil.
///
/// In es, this message translates to:
/// **'Brasil'**
String get countryBrazil;
/// No description provided for @countryJapan.
///
/// In es, this message translates to:
/// **'Japón'**
String get countryJapan;
/// No description provided for @languageNameSpanish.
///
/// In es, this message translates to:
/// **'Español'**
String get languageNameSpanish;
/// No description provided for @languageNameEnglish.
///
/// In es, this message translates to:
/// **'Inglés'**
String get languageNameEnglish;
/// No description provided for @languageNameFrench.
///
/// In es, this message translates to:
/// **'Francés'**
String get languageNameFrench;
/// No description provided for @languageNameGerman.
///
/// In es, this message translates to:
/// **'Alemán'**
String get languageNameGerman;
/// No description provided for @languageNamePortuguese.
///
/// In es, this message translates to:
/// **'Portugués'**
String get languageNamePortuguese;
/// No description provided for @languageNameItalian.
///
/// In es, this message translates to:
/// **'Italiano'**
String get languageNameItalian;
/// No description provided for @languageNameJapanese.
///
/// In es, this message translates to:
/// **'Japonés'**
String get languageNameJapanese;
/// No description provided for @languageNameArabic.
///
/// In es, this message translates to:
/// **'Árabe'**
String get languageNameArabic;
/// No description provided for @languageNameRussian.
///
/// In es, this message translates to:
/// **'Ruso'**
String get languageNameRussian;
/// No description provided for @homeScreenSubtitle.
///
/// In es, this message translates to:
/// **'Radio global en vivo con señales limpias, favoritos inteligentes y una experiencia visual de concurso.'**
String get homeScreenSubtitle;
/// No description provided for @exploreStations.
///
/// In es, this message translates to:
/// **'Explorar emisoras'**
String get exploreStations;
/// No description provided for @stationsCount.
///
/// In es, this message translates to:
/// **'{count} radios'**
String stationsCount(int count);
/// No description provided for @qualityHd.
///
/// In es, this message translates to:
/// **'Calidad HD'**
String get qualityHd;
/// No description provided for @yourStationsTitle.
///
/// In es, this message translates to:
/// **'Tus emisoras'**
String get yourStationsTitle;
/// No description provided for @seeAllAction.
///
/// In es, this message translates to:
/// **'Ver todas'**
String get seeAllAction;
/// No description provided for @openFullPlayerTooltip.
///
/// In es, this message translates to:
/// **'Abrir reproductor completo'**
String get openFullPlayerTooltip;
/// No description provided for @nowListeningLabel.
///
/// In es, this message translates to:
/// **'Escuchando ahora'**
String get nowListeningLabel;
/// No description provided for @nothingPlayingTitle.
///
/// In es, this message translates to:
/// **'Todavía no estás escuchando nada'**
String get nothingPlayingTitle;
/// No description provided for @nothingPlayingSubtitle.
///
/// In es, this message translates to:
/// **'Elegí una emisora de Tus emisoras o buscá una para empezar.'**
String get nothingPlayingSubtitle;
/// No description provided for @nearYou.
///
/// In es, this message translates to:
/// **'Cerca de vos'**
String get nearYou;
/// No description provided for @nearYouInCountry.
///
/// In es, this message translates to:
/// **'Cerca de vos · {country}'**
String nearYouInCountry(Object country);
/// No description provided for @detectAction.
///
/// In es, this message translates to:
/// **'Detectar'**
String get detectAction;
/// No description provided for @liveRadar.
///
/// In es, this message translates to:
/// **'Radar en directo'**
String get liveRadar;
/// No description provided for @genresTitle.
///
/// In es, this message translates to:
/// **'Géneros'**
String get genresTitle;
/// No description provided for @exploreByTitle.
///
/// In es, this message translates to:
/// **'Explorar por'**
String get exploreByTitle;
/// No description provided for @exploreTrendingTitle.
///
/// In es, this message translates to:
/// **'Tendencias'**
String get exploreTrendingTitle;
/// No description provided for @exploreTrendingSubtitle.
///
/// In es, this message translates to:
/// **'Hoy'**
String get exploreTrendingSubtitle;
/// No description provided for @exploreNewTitle.
///
/// In es, this message translates to:
/// **'Novedades'**
String get exploreNewTitle;
/// No description provided for @exploreNewSubtitle.
///
/// In es, this message translates to:
/// **'Esta semana'**
String get exploreNewSubtitle;
/// No description provided for @popularNowTitle.
///
/// In es, this message translates to:
/// **'Populares ahora'**
String get popularNowTitle;
/// No description provided for @offlineBannerTitle.
///
/// In es, this message translates to:
/// **'Sin conexión'**
String get offlineBannerTitle;
/// No description provided for @retryAction.
///
/// In es, this message translates to:
/// **'Reintentar'**
String get retryAction;
/// No description provided for @noStationsAvailable.
///
/// In es, this message translates to:
/// **'No hay emisoras disponibles'**
String get noStationsAvailable;
/// No description provided for @noStationsAvailableSubtitle.
///
/// In es, this message translates to:
/// **'Probá refrescar o elegir otro género para volver a capturar señal.'**
String get noStationsAvailableSubtitle;
/// No description provided for @genrePop.
///
/// In es, this message translates to:
/// **'Pop'**
String get genrePop;
/// No description provided for @genreRock.
///
/// In es, this message translates to:
/// **'Rock'**
String get genreRock;
/// No description provided for @genreJazz.
///
/// In es, this message translates to:
/// **'Jazz'**
String get genreJazz;
/// No description provided for @genreClassical.
///
/// In es, this message translates to:
/// **'Clásica'**
String get genreClassical;
/// No description provided for @genreElectronic.
///
/// In es, this message translates to:
/// **'Electrónica'**
String get genreElectronic;
/// No description provided for @genreNews.
///
/// In es, this message translates to:
/// **'Noticias'**
String get genreNews;
/// No description provided for @genreTalk.
///
/// In es, this message translates to:
/// **'Charlas'**
String get genreTalk;
/// No description provided for @genreHipHop.
///
/// In es, this message translates to:
/// **'Hip-hop'**
String get genreHipHop;
/// No description provided for @genreCountry.
///
/// In es, this message translates to:
/// **'Country'**
String get genreCountry;
/// No description provided for @genreMetal.
///
/// In es, this message translates to:
/// **'Metal'**
String get genreMetal;
/// No description provided for @genreReggae.
///
/// In es, this message translates to:
/// **'Reggae'**
String get genreReggae;
/// No description provided for @genreLatin.
///
/// In es, this message translates to:
/// **'Latina'**
String get genreLatin;
/// No description provided for @alarmScreenTitle.
///
/// In es, this message translates to:
/// **'Despertar musical'**
String get alarmScreenTitle;
/// No description provided for @alarmScreenSubtitle.
///
/// In es, this message translates to:
/// **'Alarmas con radio, sonido seguro, vacaciones inteligentes y próxima ejecución siempre visible.'**
String get alarmScreenSubtitle;
/// No description provided for @createAlarmAction.
///
/// In es, this message translates to:
/// **'Crear alarma'**
String get createAlarmAction;
/// No description provided for @alarmsCount.
///
/// In es, this message translates to:
/// **'{count} alarmas'**
String alarmsCount(int count);
/// No description provided for @activeAlarmsWithoutNextTitle.
///
/// In es, this message translates to:
/// **'Alarmas activas sin próxima ejecución'**
String get activeAlarmsWithoutNextTitle;
/// No description provided for @noActiveAlarms.
///
/// In es, this message translates to:
/// **'Sin alarmas activas'**
String get noActiveAlarms;
/// No description provided for @nextAlarmTitle.
///
/// In es, this message translates to:
/// **'Próxima alarma'**
String get nextAlarmTitle;
/// No description provided for @activeAlarmsWithoutNextSubtitle.
///
/// In es, this message translates to:
/// **'Hay {count} alarma(s) activas, pero ahora mismo no tienen una fecha futura válida. Revisá fecha, días y vacaciones.'**
String activeAlarmsWithoutNextSubtitle(int count);
/// No description provided for @createAlarmHint.
///
/// In es, this message translates to:
/// **'Creá una alarma y PluriWave calculará la siguiente ejecución automáticamente.'**
String get createAlarmHint;
/// No description provided for @alarmVacationPlay.
///
/// In es, this message translates to:
/// **'Suena en vacaciones'**
String get alarmVacationPlay;
/// No description provided for @alarmVacationPause.
///
/// In es, this message translates to:
/// **'Pausa en vacaciones'**
String get alarmVacationPause;
/// No description provided for @alarmFadeInLabel.
///
/// In es, this message translates to:
/// **'Fade-in {seconds}s'**
String alarmFadeInLabel(int seconds);
/// No description provided for @alarmNextExecution.
///
/// In es, this message translates to:
/// **'Siguiente ejecución: {date}'**
String alarmNextExecution(Object date);
/// No description provided for @alarmNoNextExecution.
///
/// In es, this message translates to:
/// **'No tiene próxima ejecución activa.'**
String get alarmNoNextExecution;
/// No description provided for @alarmSkippedExecution.
///
/// In es, this message translates to:
/// **'Una ejecución fue omitida: {date}.'**
String alarmSkippedExecution(Object date);
/// No description provided for @editAction.
///
/// In es, this message translates to:
/// **'Editar'**
String get editAction;
/// No description provided for @skipNextAction.
///
/// In es, this message translates to:
/// **'Omitir siguiente'**
String get skipNextAction;
/// No description provided for @deleteTooltip.
///
/// In es, this message translates to:
/// **'Eliminar'**
String get deleteTooltip;
/// No description provided for @alarmHeroSkipAction.
///
/// In es, this message translates to:
/// **'Saltar'**
String get alarmHeroSkipAction;
/// No description provided for @alarmDeleteConfirmTitle.
///
/// In es, this message translates to:
/// **'¿Eliminar alarma?'**
String get alarmDeleteConfirmTitle;
/// No description provided for @alarmDeleteConfirmMessage.
///
/// In es, this message translates to:
/// **'Esta acción no se puede deshacer.'**
String get alarmDeleteConfirmMessage;
/// No description provided for @alarmSkippedNoNextSnackbar.
///
/// In es, this message translates to:
/// **'Alarma omitida. No queda próxima ejecución.'**
String get alarmSkippedNoNextSnackbar;
/// No description provided for @alarmSkippedReturnsSnackbar.
///
/// In es, this message translates to:
/// **'Alarma omitida. Volverá el {date}.'**
String alarmSkippedReturnsSnackbar(Object date);
/// No description provided for @alarmVacationPausedNoNext.
///
/// In es, this message translates to:
/// **'Está pausada por vacaciones ({vacationName}) y sin próxima ejecución.'**
String alarmVacationPausedNoNext(Object vacationName);
/// No description provided for @alarmVacationPausedReturns.
///
/// In es, this message translates to:
/// **'Está pausada por vacaciones ({vacationName}) y vuelve el {date}.'**
String alarmVacationPausedReturns(Object vacationName, Object date);
/// No description provided for @alarmVacationReturns.
///
/// In es, this message translates to:
/// **'Con vacaciones activas, volverá a sonar el {date}.'**
String alarmVacationReturns(Object date);
/// No description provided for @defaultAlarmName.
///
/// In es, this message translates to:
/// **'Despertador musical'**
String get defaultAlarmName;
/// No description provided for @newAlarmTitle.
///
/// In es, this message translates to:
/// **'Nueva alarma'**
String get newAlarmTitle;
/// No description provided for @editAlarmTitle.
///
/// In es, this message translates to:
/// **'Editar alarma'**
String get editAlarmTitle;
/// No description provided for @nameField.
///
/// In es, this message translates to:
/// **'Nombre'**
String get nameField;
/// No description provided for @timeField.
///
/// In es, this message translates to:
/// **'Hora'**
String get timeField;
/// No description provided for @dateField.
///
/// In es, this message translates to:
/// **'Fecha'**
String get dateField;
/// No description provided for @onceOption.
///
/// In es, this message translates to:
/// **'Una vez'**
String get onceOption;
/// No description provided for @dailyOption.
///
/// In es, this message translates to:
/// **'Diaria'**
String get dailyOption;
/// No description provided for @weekdaysOption.
///
/// In es, this message translates to:
/// **'Días'**
String get weekdaysOption;
/// No description provided for @soundAndVolumeSection.
///
/// In es, this message translates to:
/// **'Sonido y volumen'**
String get soundAndVolumeSection;
/// No description provided for @alarmFadeInTitle.
///
/// In es, this message translates to:
/// **'Fade-in de alarma'**
String get alarmFadeInTitle;
/// No description provided for @alarmFadeInOff.
///
/// In es, this message translates to:
/// **'0 s (sin transición)'**
String get alarmFadeInOff;
/// No description provided for @alarmFadeInSummary.
///
/// In es, this message translates to:
/// **'{seconds} s (de 5% al volumen elegido)'**
String alarmFadeInSummary(int seconds);
/// No description provided for @internalSafeSoundLabel.
///
/// In es, this message translates to:
/// **'Sonido seguro interno'**
String get internalSafeSoundLabel;
/// No description provided for @soundWarmSunrise.
///
/// In es, this message translates to:
/// **'Amanecer cálido'**
String get soundWarmSunrise;
/// No description provided for @soundSoftBell.
///
/// In es, this message translates to:
/// **'Campana suave'**
String get soundSoftBell;
/// No description provided for @soundDigitalPulse.
///
/// In es, this message translates to:
/// **'Pulso digital'**
String get soundDigitalPulse;
/// No description provided for @favoriteStationLabel.
///
/// In es, this message translates to:
/// **'Emisora favorita'**
String get favoriteStationLabel;
/// No description provided for @noStationUseInternalSound.
///
/// In es, this message translates to:
/// **'Sin emisora: usar sonido interno'**
String get noStationUseInternalSound;
/// No description provided for @alarmFallbackStationLabel.
///
/// In es, this message translates to:
/// **'Emisora de respaldo'**
String get alarmFallbackStationLabel;
/// No description provided for @alarmStationPickerSearchHint.
///
/// In es, this message translates to:
/// **'Buscá una emisora por nombre'**
String get alarmStationPickerSearchHint;
/// No description provided for @alarmSnoozeDurationTitle.
///
/// In es, this message translates to:
/// **'Duración de la posposición'**
String get alarmSnoozeDurationTitle;
/// No description provided for @snoozeAction.
///
/// In es, this message translates to:
/// **'Posponer'**
String get snoozeAction;
/// No description provided for @alarmSnoozeOptionLabel.
///
/// In es, this message translates to:
/// **'{minutes} min'**
String alarmSnoozeOptionLabel(int minutes);
/// No description provided for @alarmSnoozeUsualLabel.
///
/// In es, this message translates to:
/// **'habitual'**
String get alarmSnoozeUsualLabel;
/// No description provided for @saveFavoritesAlarmHint.
///
/// In es, this message translates to:
/// **'Guardá emisoras en Favoritos para usarlas como alarma musical.'**
String get saveFavoritesAlarmHint;
/// No description provided for @useCurrentStationAction.
///
/// In es, this message translates to:
/// **'Usar emisora actual'**
String get useCurrentStationAction;
/// No description provided for @playDuringVacations.
///
/// In es, this message translates to:
/// **'Sonar durante vacaciones'**
String get playDuringVacations;
/// No description provided for @playDuringVacationsHint.
///
/// In es, this message translates to:
/// **'Si lo apagás, la próxima ejecución saltará al primer día válido.'**
String get playDuringVacationsHint;
/// No description provided for @saveAlarmAction.
///
/// In es, this message translates to:
/// **'Guardar alarma'**
String get saveAlarmAction;
/// No description provided for @chooseOneWeekdayError.
///
/// In es, this message translates to:
/// **'Elegí al menos un día de la semana.'**
String get chooseOneWeekdayError;
/// No description provided for @androidReliabilityReview.
///
/// In es, this message translates to:
/// **'Revisar fiabilidad Android'**
String get androidReliabilityReview;
/// No description provided for @statusOk.
///
/// In es, this message translates to:
/// **'OK'**
String get statusOk;
/// No description provided for @statusPending.
///
/// In es, this message translates to:
/// **'pendiente'**
String get statusPending;
/// No description provided for @androidReliabilityStatus.
///
/// In es, this message translates to:
/// **'Fiabilidad: exactas {exact} · notificaciones {notifications} · pantalla {screen}'**
String androidReliabilityStatus(
Object exact,
Object notifications,
Object screen,
);
/// No description provided for @vacationRangesTitle.
///
/// In es, this message translates to:
/// **'Rangos de vacaciones'**
String get vacationRangesTitle;
/// No description provided for @addAction.
///
/// In es, this message translates to:
/// **'Agregar'**
String get addAction;
/// No description provided for @vacationRangesHint.
///
/// In es, this message translates to:
/// **'Si una alarma tiene \"Pausa en vacaciones\", se salta automáticamente estos rangos.'**
String get vacationRangesHint;
/// No description provided for @noVacationRangesLoaded.
///
/// In es, this message translates to:
/// **'Sin rangos cargados.'**
String get noVacationRangesLoaded;
/// No description provided for @deleteRangeTooltip.
///
/// In es, this message translates to:
/// **'Eliminar rango'**
String get deleteRangeTooltip;
/// No description provided for @vacationRangesCount.
///
/// In es, this message translates to:
/// **'{count} rangos'**
String vacationRangesCount(int count);
/// No description provided for @vacationSummaryActiveCountdown.
///
/// In es, this message translates to:
/// **'En curso · quedan {days} días'**
String vacationSummaryActiveCountdown(int days);
/// No description provided for @vacationSummaryUpcomingCountdown.
///
/// In es, this message translates to:
/// **'Próximo rango en {days} días'**
String vacationSummaryUpcomingCountdown(int days);
/// No description provided for @vacationImpactPausedLabel.
///
/// In es, this message translates to:
/// **'Pausa: {times}'**
String vacationImpactPausedLabel(Object times);
/// No description provided for @vacationImpactContinuesLabel.
///
/// In es, this message translates to:
/// **'Sigue sonando: {times}'**
String vacationImpactContinuesLabel(Object times);
/// No description provided for @vacationUpcomingSectionTitle.
///
/// In es, this message translates to:
/// **'PROGRAMADOS'**
String get vacationUpcomingSectionTitle;
/// No description provided for @vacationPastSectionTitle.
///
/// In es, this message translates to:
/// **'Rangos pasados'**
String get vacationPastSectionTitle;
/// No description provided for @addVacationRangeCta.
///
/// In es, this message translates to:
/// **'Añadir rango'**
String get addVacationRangeCta;
/// No description provided for @vacationExplainerBanner.
///
/// In es, this message translates to:
/// **'Durante estos rangos no suenan las alarmas marcadas como \"pausar en vacaciones\". Las marcadas como \"sonar siempre\" no se ven afectadas.'**
String get vacationExplainerBanner;
/// No description provided for @vacationNoActiveRangeHint.
///
/// In es, this message translates to:
/// **'No hay un rango de vacaciones activo ahora mismo.'**
String get vacationNoActiveRangeHint;
/// No description provided for @vacationsDefaultName.
///
/// In es, this message translates to:
/// **'Vacaciones'**
String get vacationsDefaultName;
/// No description provided for @newVacationRangeTitle.
///
/// In es, this message translates to:
/// **'Nuevo rango de vacaciones'**
String get newVacationRangeTitle;
/// No description provided for @editVacationRangeTitle.
///
/// In es, this message translates to:
/// **'Editar rango de vacaciones'**
String get editVacationRangeTitle;
/// No description provided for @vacationDeleteConfirmTitle.
///
/// In es, this message translates to:
/// **'¿Eliminar rango de vacaciones?'**
String get vacationDeleteConfirmTitle;
/// No description provided for @vacationDeleteConfirmMessage.
///
/// In es, this message translates to:
/// **'Esta acción no se puede deshacer.'**
String get vacationDeleteConfirmMessage;
/// No description provided for @startField.
///
/// In es, this message translates to:
/// **'Inicio'**
String get startField;
/// No description provided for @endField.
///
/// In es, this message translates to:
/// **'Fin'**
String get endField;
/// No description provided for @saveRangeAction.
///
/// In es, this message translates to:
/// **'Guardar rango'**
String get saveRangeAction;
/// No description provided for @noAlarmsYetTitle.
///
/// In es, this message translates to:
/// **'Todavía no hay alarmas.'**
String get noAlarmsYetTitle;
/// No description provided for @noAlarmsYetSubtitle.
///
/// In es, this message translates to:
/// **'Creá una para diseñar tu despertar musical.'**
String get noAlarmsYetSubtitle;
/// No description provided for @ringingInternalAudioActive.
///
/// In es, this message translates to:
/// **'Sonando con audio seguro interno.'**
String get ringingInternalAudioActive;
/// No description provided for @ringingPreparingInternalAudio.
///
/// In es, this message translates to:
/// **'Preparando audio seguro interno.'**
String get ringingPreparingInternalAudio;
/// No description provided for @stopAlarmAction.
///
/// In es, this message translates to:
/// **'Detener alarma'**
String get stopAlarmAction;
/// No description provided for @alarmStopFailedMessage.
///
/// In es, this message translates to:
/// **'No pudimos confirmar que la alarma se detuvo. Inténtalo de nuevo.'**
String get alarmStopFailedMessage;
/// No description provided for @alarmForceStopAction.
///
/// In es, this message translates to:
/// **'Forzar detención'**
String get alarmForceStopAction;
/// No description provided for @alarmMissedNotificationTitle.
///
/// In es, this message translates to:
/// **'Alarma perdida'**
String get alarmMissedNotificationTitle;
/// No description provided for @alarmMissedNotificationText.
///
/// In es, this message translates to:
/// **'{name} se silenció automáticamente después de 10 minutos.'**
String alarmMissedNotificationText(Object name);
/// No description provided for @pauseAction.
///
/// In es, this message translates to:
/// **'Pausar'**
String get pauseAction;
/// No description provided for @miniPlayerOpenLabel.
///
/// In es, this message translates to:
/// **'Abrir reproductor de {stationName}'**
String miniPlayerOpenLabel(Object stationName);
/// No description provided for @playerIconLabel.
///
/// In es, this message translates to:
/// **'Reproductor'**
String get playerIconLabel;
/// No description provided for @playbackStatusConnecting.
///
/// In es, this message translates to:
/// **'Conectando...'**
String get playbackStatusConnecting;
/// No description provided for @playbackStatusLive.
///
/// In es, this message translates to:
/// **'En directo'**
String get playbackStatusLive;
/// No description provided for @playbackStatusPaused.
///
/// In es, this message translates to:
/// **'Pausado'**
String get playbackStatusPaused;
/// No description provided for @playbackStatusReconnecting.
///
/// In es, this message translates to:
/// **'Reconectando...'**
String get playbackStatusReconnecting;
/// No description provided for @playbackStatusConnectionError.
///
/// In es, this message translates to:
/// **'Error de conexión'**
String get playbackStatusConnectionError;
/// No description provided for @playbackStatusStopped.
///
/// In es, this message translates to:
/// **'Detenido'**
String get playbackStatusStopped;
/// No description provided for @stationSemanticLabel.
///
/// In es, this message translates to:
/// **'Emisora {stationName}'**
String stationSemanticLabel(Object stationName);
/// No description provided for @favoritesAddTooltip.
///
/// In es, this message translates to:
/// **'Añadir a favoritos'**
String get favoritesAddTooltip;
/// No description provided for @favoritesAddedMessage.
///
/// In es, this message translates to:
/// **'{stationName} añadida a favoritos'**
String favoritesAddedMessage(Object stationName);
/// No description provided for @stationIconLabel.
///
/// In es, this message translates to:
/// **'Icono de emisora'**
String get stationIconLabel;
/// No description provided for @liveNow.
///
/// In es, this message translates to:
/// **'En vivo'**
String get liveNow;
/// No description provided for @equalizerBandLabel.
///
/// In es, this message translates to:
/// **'Banda {band}'**
String equalizerBandLabel(Object band);
/// No description provided for @equalizerBandValue.
///
/// In es, this message translates to:
/// **'{value} decibelios'**
String equalizerBandValue(Object value);
/// No description provided for @equalizerPresetFlat.
///
/// In es, this message translates to:
/// **'Plano'**
String get equalizerPresetFlat;
/// No description provided for @equalizerPresetRock.
///
/// In es, this message translates to:
/// **'Rock'**
String get equalizerPresetRock;
/// No description provided for @equalizerPresetPop.
///
/// In es, this message translates to:
/// **'Pop'**
String get equalizerPresetPop;
/// No description provided for @equalizerPresetBassBoost.
///
/// In es, this message translates to:
/// **'Refuerzo de graves'**
String get equalizerPresetBassBoost;
/// No description provided for @equalizerPresetJazz.
///
/// In es, this message translates to:
/// **'Jazz'**
String get equalizerPresetJazz;
/// No description provided for @equalizerPresetVoice.
///
/// In es, this message translates to:
/// **'Voz'**
String get equalizerPresetVoice;
/// No description provided for @equalizerPresetCustom.
///
/// In es, this message translates to:
/// **'Personalizado'**
String get equalizerPresetCustom;
/// No description provided for @onboardingTitle.
///
/// In es, this message translates to:
/// **'Bienvenido a PluriWave'**
String get onboardingTitle;
/// No description provided for @onboardingNewsTitle.
///
/// In es, this message translates to:
/// **'Novedades'**
String get onboardingNewsTitle;
/// No description provided for @onboardingStartAction.
///
/// In es, this message translates to:
/// **'Empezar'**
String get onboardingStartAction;
/// No description provided for @onboardingCloseTooltip.
///
/// In es, this message translates to:
/// **'Cerrar'**
String get onboardingCloseTooltip;
/// No description provided for @radioRecordingError.
///
/// In es, this message translates to:
/// **'Error al grabar la radio: {error}'**
String radioRecordingError(Object error);
/// No description provided for @radioApiConnectionError.
///
/// In es, this message translates to:
/// **'Sin conexión a la API de radio'**
String get radioApiConnectionError;
/// No description provided for @radioSearchError.
///
/// In es, this message translates to:
/// **'Error en la búsqueda. Comprueba tu conexión.'**
String get radioSearchError;
/// No description provided for @radioLoadMoreStationsError.
///
/// In es, this message translates to:
/// **'No se pudieron cargar más emisoras.'**
String get radioLoadMoreStationsError;
/// No description provided for @radioNearbyStationsError.
///
/// In es, this message translates to:
/// **'No pudimos detectar emisoras cercanas. Usa filtros por país.'**
String get radioNearbyStationsError;
/// No description provided for @radioCannotPlayStation.
///
/// In es, this message translates to:
/// **'No se puede reproducir \"{stationName}\"'**
String radioCannotPlayStation(Object stationName);
/// No description provided for @recordingSelectStationFirst.
///
/// In es, this message translates to:
/// **'Primero selecciona una emisora para grabar.'**
String get recordingSelectStationFirst;
/// No description provided for @recordingStartError.
///
/// In es, this message translates to:
/// **'No se pudo iniciar la grabación: {error}'**
String recordingStartError(Object error);
/// No description provided for @unsupportedConfigVersion.
///
/// In es, this message translates to:
/// **'Versión de configuración no compatible'**
String get unsupportedConfigVersion;
/// No description provided for @audioErrorGeneric.
///
/// In es, this message translates to:
/// **'Error de reproducción'**
String get audioErrorGeneric;
/// No description provided for @audioErrorNoInternet.
///
/// In es, this message translates to:
/// **'Sin conexión a internet'**
String get audioErrorNoInternet;
/// No description provided for @audioErrorInvalidUrl.
///
/// In es, this message translates to:
/// **'La URL de la radio no es válida'**
String get audioErrorInvalidUrl;
/// No description provided for @audioErrorNotFound.
///
/// In es, this message translates to:
/// **'La radio no está disponible (error 404)'**
String get audioErrorNotFound;
/// No description provided for @audioErrorTimeout.
///
/// In es, this message translates to:
/// **'Tiempo de espera agotado al conectar'**
String get audioErrorTimeout;
/// No description provided for @audioErrorCannotConnect.
///
/// In es, this message translates to:
/// **'No se puede conectar a la radio'**
String get audioErrorCannotConnect;
/// No description provided for @audioErrorUnsupportedFormat.
///
/// In es, this message translates to:
/// **'Formato de stream no compatible'**
String get audioErrorUnsupportedFormat;
/// No description provided for @audioErrorDecode.
///
/// In es, this message translates to:
/// **'Error al decodificar el stream de audio'**
String get audioErrorDecode;
/// No description provided for @audioErrorCleartext.
///
/// In es, this message translates to:
/// **'Esta radio usa HTTP sin cifrar, y no está permitido'**
String get audioErrorCleartext;
/// No description provided for @audioErrorSsl.
///
/// In es, this message translates to:
/// **'Certificado SSL inválido en la radio'**
String get audioErrorSsl;
/// No description provided for @audioErrorCannotPlay.
///
/// In es, this message translates to:
/// **'No se puede reproducir esta radio'**
String get audioErrorCannotPlay;
/// No description provided for @audioErrorUnexpectedPlayback.
///
/// In es, this message translates to:
/// **'Error inesperado al reproducir'**
String get audioErrorUnexpectedPlayback;
/// No description provided for @androidExactAlarmScheduleError.
///
/// In es, this message translates to:
/// **'Android no pudo programar una alarma exacta. Revisa el permiso de alarmas exactas.'**
String get androidExactAlarmScheduleError;
/// No description provided for @recordingPathEmptyError.
///
/// In es, this message translates to:
/// **'La ruta de grabación no puede estar vacía'**
String get recordingPathEmptyError;
/// No description provided for @recordingMaxSizeInvalidError.
///
/// In es, this message translates to:
/// **'El tamaño máximo debe ser mayor que cero'**
String get recordingMaxSizeInvalidError;
/// No description provided for @recordingAlreadyActiveError.
///
/// In es, this message translates to:
/// **'Ya hay una grabación en curso'**
String get recordingAlreadyActiveError;
/// No description provided for @alarmRingingFallbackActive.
///
/// In es, this message translates to:
/// **'Sonando con audio seguro interno.'**
String get alarmRingingFallbackActive;
/// No description provided for @alarmRingingPreparingFallback.
///
/// In es, this message translates to:
/// **'Preparando audio seguro interno.'**
String get alarmRingingPreparingFallback;
/// No description provided for @alarmRingingTryingStation.
///
/// In es, this message translates to:
/// **'Intentando reproducir tu emisora con máxima calidad disponible.'**
String get alarmRingingTryingStation;
/// No description provided for @alarmScheduleDaily.
///
/// In es, this message translates to:
/// **'Cada mañana'**
String get alarmScheduleDaily;
/// No description provided for @alarmScheduleOnce.
///
/// In es, this message translates to:
/// **'Una vez · {date}'**
String alarmScheduleOnce(Object date);
/// No description provided for @alarmScheduleWeekdays.
///
/// In es, this message translates to:
/// **'Días: {days}'**
String alarmScheduleWeekdays(Object days);
/// No description provided for @alarmRepeatSectionLabel.
///
/// In es, this message translates to:
/// **'REPETIR'**
String get alarmRepeatSectionLabel;
/// No description provided for @alarmVolumeLabel.
///
/// In es, this message translates to:
/// **'Volumen'**
String get alarmVolumeLabel;
/// No description provided for @androidReliabilityTitle.
///
/// In es, this message translates to:
/// **'Revisar fiabilidad Android'**
String get androidReliabilityTitle;
/// No description provided for @closeAction.
///
/// In es, this message translates to:
/// **'Cerrar'**
String get closeAction;
/// No description provided for @customOption.
///
/// In es, this message translates to:
/// **'Personalizada'**
String get customOption;
/// No description provided for @endLabel.
///
/// In es, this message translates to:
/// **'Fin'**
String get endLabel;
/// No description provided for @equalizerDisable.
///
/// In es, this message translates to:
/// **'Desactivar ecualizador'**
String get equalizerDisable;
/// No description provided for @helpTitle.
///
/// In es, this message translates to:
/// **'Ayuda y tutorial'**
String get helpTitle;
/// No description provided for @helpSubtitle.
///
/// In es, this message translates to:
/// **'9 pantallas · vuelve a verlo cuando quieras'**
String get helpSubtitle;
/// No description provided for @tutorialSkipAction.
///
/// In es, this message translates to:
/// **'Saltar'**
String get tutorialSkipAction;
/// No description provided for @tutorialNextAction.
///
/// In es, this message translates to:
/// **'Siguiente'**
String get tutorialNextAction;
/// No description provided for @tutorialPage1Headline.
///
/// In es, this message translates to:
/// **'Guarda tus emisoras y agrúpalas'**
String get tutorialPage1Headline;
/// No description provided for @tutorialPage1Body.
///
/// In es, this message translates to:
/// **'Toca el corazón para guardar una emisora. En «Tus emisoras» puedes crear grupos como «Cada mañana» o «Coche» y reordenarlas arrastrando.'**
String get tutorialPage1Body;
/// No description provided for @tutorialPage2Headline.
///
/// In es, this message translates to:
/// **'Un ecualizador base y otro por emisora'**
String get tutorialPage2Headline;
/// No description provided for @tutorialPage2Body.
///
/// In es, this message translates to:
/// **'En Ajustes defines el ecualizador general. Y desde la reproducción de una emisora concreta puedes darle su propio ajuste, que manda sobre el general.'**
String get tutorialPage2Body;
/// No description provided for @tutorialPage3Headline.
///
/// In es, this message translates to:
/// **'Graba lo que estás escuchando'**
String get tutorialPage3Headline;
/// No description provided for @tutorialPage3Body.
///
/// In es, this message translates to:
/// **'Desde la bandeja de herramientas del reproductor, «Grabar» guarda el stream original. Encuentra tus grabaciones en Ajustes Grabaciones.'**
String get tutorialPage3Body;
/// No description provided for @tutorialPage4Headline.
///
/// In es, this message translates to:
/// **'Alarmas que se adaptan a ti'**
String get tutorialPage4Headline;
/// No description provided for @tutorialPage4Body.
///
/// In es, this message translates to:
/// **'Despiértate con tu emisora favorita, pospón 3, 5 o 10 minutos, y añade rangos de vacaciones para que algunas alarmas se salten solas.'**
String get tutorialPage4Body;
/// No description provided for @tutorialPage5Headline.
///
/// In es, this message translates to:
/// **'Tus favoritas, también en el coche'**
String get tutorialPage5Headline;
/// No description provided for @tutorialPage5Body.
///
/// In es, this message translates to:
/// **'Conecta el móvil con Android Auto y encontrarás Favoritos, Todas las emisoras, Mis emisoras y tu Música Local, con botones grandes pensados para conducir.'**
String get tutorialPage5Body;
/// No description provided for @tutorialPage6Headline.
///
/// In es, this message translates to:
/// **'Se reconecta sola'**
String get tutorialPage6Headline;
/// No description provided for @tutorialPage6Body.
///
/// In es, this message translates to:
/// **'Si se corta la señal, PluriWave reintenta automáticamente y sigue mostrando tus favoritas guardadas aunque no tengas conexión.'**
String get tutorialPage6Body;
/// No description provided for @tutorialPage7Headline.
///
/// In es, this message translates to:
/// **'Elige cuánto posponer'**
String get tutorialPage7Headline;
/// No description provided for @tutorialPage7Body.
///
/// In es, this message translates to:
/// **'Cuando suene una alarma, no hay un único «posponer»: eliges 3, 5 o 10 minutos según lo que necesites en ese momento.'**
String get tutorialPage7Body;
/// No description provided for @tutorialPage8Headline.
///
/// In es, this message translates to:
/// **'¿No la encuentras? Añádela tú'**
String get tutorialPage8Headline;
/// No description provided for @tutorialPage8Body.
///
/// In es, this message translates to:
/// **'En «Tus emisoras» → Añadir emisora personalizada pega la URL del stream de una emisora que no esté en el buscador. Se guarda en «Mis emisoras», también disponible en el coche.'**
String get tutorialPage8Body;
/// No description provided for @tutorialPage9Headline.
///
/// In es, this message translates to:
/// **'Listo, ya conoces lo esencial'**
String get tutorialPage9Headline;
/// No description provided for @tutorialPage9BannerBody.
///
/// In es, this message translates to:
/// **'Para volver a ver este tutorial cuando quieras: Ajustes → Información → Ayuda y tutorial.'**
String get tutorialPage9BannerBody;
/// No description provided for @indefiniteOption.
///
/// In es, this message translates to:
/// **'Indefinida'**
String get indefiniteOption;
/// No description provided for @invalidNumber.
///
/// In es, this message translates to:
/// **'Número inválido'**
String get invalidNumber;
/// No description provided for @nameLabel.
///
/// In es, this message translates to:
/// **'Nombre'**
String get nameLabel;
/// No description provided for @notPlaying.
///
/// In es, this message translates to:
/// **'No está reproduciendo'**
String get notPlaying;
/// No description provided for @oneTimeOption.
///
/// In es, this message translates to:
/// **'Una vez'**
String get oneTimeOption;
/// No description provided for @pausePlaybackTooltip.
///
/// In es, this message translates to:
/// **'Pausar reproducción'**
String get pausePlaybackTooltip;
/// No description provided for @playerQualityChangeAction.
///
/// In es, this message translates to:
/// **'Cambiar'**
String get playerQualityChangeAction;
/// No description provided for @playerToolEqLabel.
///
/// In es, this message translates to:
/// **'EQ propio'**
String get playerToolEqLabel;
/// No description provided for @qualityOriginal.
///
/// In es, this message translates to:
/// **'Calidad original: {quality}'**
String qualityOriginal(Object quality);
/// No description provided for @qualityUnknown.
///
/// In es, this message translates to:
/// **'Calidad no informada'**
String get qualityUnknown;
/// No description provided for @recordAction.
///
/// In es, this message translates to:
/// **'Grabar'**
String get recordAction;
/// No description provided for @recordDurationTitle.
///
/// In es, this message translates to:
/// **'Duración de grabación'**
String get recordDurationTitle;
/// No description provided for @recordRadioSubtitle.
///
/// In es, this message translates to:
/// **'Elegí cuánto tiempo querés grabar.'**
String get recordRadioSubtitle;
/// No description provided for @recordRadioTitle.
///
/// In es, this message translates to:
/// **'Grabar radio'**
String get recordRadioTitle;
/// No description provided for @recordingActiveTitle.
///
/// In es, this message translates to:
/// **'Grabando radio'**
String get recordingActiveTitle;
/// No description provided for @recordingDirectTitle.
///
/// In es, this message translates to:
/// **'Grabación directa'**
String get recordingDirectTitle;
/// No description provided for @recordingsOpenFolderPlainError.
///
/// In es, this message translates to:
/// **'No se pudo abrir la carpeta de grabaciones'**
String get recordingsOpenFolderPlainError;
/// No description provided for @recordingsOpenLatest.
///
/// In es, this message translates to:
/// **'Abrir última grabación'**
String get recordingsOpenLatest;
/// No description provided for @recordingsOpenLatestError.
///
/// In es, this message translates to:
/// **'No se pudo abrir la última grabación'**
String get recordingsOpenLatestError;
/// No description provided for @startLabel.
///
/// In es, this message translates to:
/// **'Inicio'**
String get startLabel;
/// No description provided for @startPlaybackTooltip.
///
/// In es, this message translates to:
/// **'Iniciar reproducción'**
String get startPlaybackTooltip;
/// No description provided for @stopAction.
///
/// In es, this message translates to:
/// **'Parar'**
String get stopAction;
/// No description provided for @stopPlaybackTooltip.
///
/// In es, this message translates to:
/// **'Detener reproducción'**
String get stopPlaybackTooltip;
/// No description provided for @weekdayShortMonday.
///
/// In es, this message translates to:
/// **'Lun'**
String get weekdayShortMonday;
/// No description provided for @weekdayShortTuesday.
///
/// In es, this message translates to:
/// **'Mar'**
String get weekdayShortTuesday;
/// No description provided for @weekdayShortWednesday.
///
/// In es, this message translates to:
/// **'Mié'**
String get weekdayShortWednesday;
/// No description provided for @weekdayShortThursday.
///
/// In es, this message translates to:
/// **'Jue'**
String get weekdayShortThursday;
/// No description provided for @weekdayShortFriday.
///
/// In es, this message translates to:
/// **'Vie'**
String get weekdayShortFriday;
/// No description provided for @weekdayShortSaturday.
///
/// In es, this message translates to:
/// **'Sáb'**
String get weekdayShortSaturday;
/// No description provided for @weekdayShortSunday.
///
/// In es, this message translates to:
/// **'Dom'**
String get weekdayShortSunday;
/// No description provided for @stationCount.
///
/// In es, this message translates to:
/// **'{count, plural, =1{1 emisora} other{{count} emisoras}}'**
String stationCount(int count);
/// No description provided for @alarmIconLabel.
///
/// In es, this message translates to:
/// **'Alarma musical'**
String get alarmIconLabel;
/// No description provided for @vacationIconLabel.
///
/// In es, this message translates to:
/// **'Modo vacaciones'**
String get vacationIconLabel;
/// No description provided for @alarmAdvancedSectionTitle.
///
/// In es, this message translates to:
/// **'Avanzado'**
String get alarmAdvancedSectionTitle;
/// No description provided for @alarmInlineHourLabel.
///
/// In es, this message translates to:
/// **'Hora'**
String get alarmInlineHourLabel;
/// No description provided for @alarmInlineMinuteLabel.
///
/// In es, this message translates to:
/// **'Minuto'**
String get alarmInlineMinuteLabel;
/// No description provided for @alarmVolumeRisingStatus.
///
/// In es, this message translates to:
/// **'Subiendo volumen'**
String get alarmVolumeRisingStatus;
/// No description provided for @streamUrlHint.
///
/// In es, this message translates to:
/// **'https://stream.example.com:8000/radio'**
String get streamUrlHint;
/// No description provided for @advancedEqSectionTitle.
///
/// In es, this message translates to:
/// **'Opciones avanzadas de ecualización'**
String get advancedEqSectionTitle;
/// No description provided for @advancedEqEnableToggle.
///
/// In es, this message translates to:
/// **'Activar EQ por dispositivo'**
String get advancedEqEnableToggle;
/// No description provided for @advancedEqEnableToggleSubtitle.
///
/// In es, this message translates to:
/// **'Aplica automáticamente un preset de EQ distinto al cambiar la salida de audio.'**
String get advancedEqEnableToggleSubtitle;
/// No description provided for @advancedEqKnownDevicesTitle.
///
/// In es, this message translates to:
/// **'Dispositivos de audio conocidos'**
String get advancedEqKnownDevicesTitle;
/// No description provided for @advancedEqKnownDevicesEmpty.
///
/// In es, this message translates to:
/// **'No hay dispositivos registrados. Conectá uno para empezar.'**
String get advancedEqKnownDevicesEmpty;
/// No description provided for @advancedEqDevicePresetLabel.
///
/// In es, this message translates to:
/// **'Preset: {presetName}'**
String advancedEqDevicePresetLabel(Object presetName);
/// No description provided for @preNoticeCountdown.
///
/// In es, this message translates to:
/// **'Empieza en {minutes} min'**
String preNoticeCountdown(int minutes);
/// No description provided for @snoozeCountdown.
///
/// In es, this message translates to:
/// **'Suena en {minutes} min'**
String snoozeCountdown(int minutes);
/// No description provided for @snoozeAgainAction.
///
/// In es, this message translates to:
/// **'Posponer otra vez'**
String get snoozeAgainAction;
/// No description provided for @alarmRingingNotificationTitle.
///
/// In es, this message translates to:
/// **'Alarma PluriWave'**
String get alarmRingingNotificationTitle;
/// No description provided for @alarmFireChannelName.
///
/// In es, this message translates to:
/// **'Alarmas sonando'**
String get alarmFireChannelName;
/// No description provided for @alarmFireChannelDescription.
///
/// In es, this message translates to:
/// **'Sonido y pantalla urgente cuando una alarma musical debe sonar'**
String get alarmFireChannelDescription;
/// No description provided for @alarmPreNoticeChannelName.
///
/// In es, this message translates to:
/// **'Preavisos de alarmas'**
String get alarmPreNoticeChannelName;
/// No description provided for @alarmPreNoticeChannelDescription.
///
/// In es, this message translates to:
/// **'Notificaciones silenciosas antes de la alarma'**
String get alarmPreNoticeChannelDescription;
/// No description provided for @openFolderChooserTitle.
///
/// In es, this message translates to:
/// **'Abrir carpeta'**
String get openFolderChooserTitle;
/// No description provided for @openRecordingChooserTitle.
///
/// In es, this message translates to:
/// **'Abrir grabación'**
String get openRecordingChooserTitle;
/// No description provided for @eqDeviceEditTitle.
///
/// In es, this message translates to:
/// **'Editar dispositivo'**
String get eqDeviceEditTitle;
/// No description provided for @eqDeviceNameLabel.
///
/// In es, this message translates to:
/// **'Nombre del dispositivo'**
String get eqDeviceNameLabel;
/// No description provided for @eqDeviceNameHint.
///
/// In es, this message translates to:
/// **'Ej: Altavoz del living'**
String get eqDeviceNameHint;
/// No description provided for @eqDeviceNameConfirm.
///
/// In es, this message translates to:
/// **'Guardar'**
String get eqDeviceNameConfirm;
/// No description provided for @eqDeviceConnected.
///
/// In es, this message translates to:
/// **'Conectado'**
String get eqDeviceConnected;
/// No description provided for @eqDeviceActiveOutput.
///
/// In es, this message translates to:
/// **'El audio está saliendo por este dispositivo'**
String get eqDeviceActiveOutput;
/// No description provided for @eqDeviceRemove.
///
/// In es, this message translates to:
/// **'Quitar dispositivo'**
String get eqDeviceRemove;
/// No description provided for @eqDeviceRemoved.
///
/// In es, this message translates to:
/// **'Se quitó {device}'**
String eqDeviceRemoved(Object device);
/// No description provided for @localMusicSectionTitle.
///
/// In es, this message translates to:
/// **'Música local (Android Auto)'**
String get localMusicSectionTitle;
/// No description provided for @localMusicSectionDescription.
///
/// In es, this message translates to:
/// **'Elegí una carpeta de este dispositivo para explorar y reproducir sus archivos de audio desde el auto.'**
String get localMusicSectionDescription;
/// No description provided for @localMusicFolderNotConfigured.
///
/// In es, this message translates to:
/// **'No hay carpeta seleccionada'**
String get localMusicFolderNotConfigured;
/// No description provided for @localMusicFolderTitle.
///
/// In es, this message translates to:
/// **'Carpeta de música local'**
String get localMusicFolderTitle;
/// No description provided for @localMusicChoosePath.
///
/// In es, this message translates to:
/// **'Elegir carpeta'**
String get localMusicChoosePath;
/// No description provided for @localMusicChangePath.
///
/// In es, this message translates to:
/// **'Cambiar carpeta'**
String get localMusicChangePath;
/// No description provided for @localMusicFolderUpdated.
///
/// In es, this message translates to:
/// **'Carpeta de música local actualizada'**
String get localMusicFolderUpdated;
/// No description provided for @localMusicFolderSaveError.
///
/// In es, this message translates to:
/// **'No se pudo guardar la carpeta: {error}'**
String localMusicFolderSaveError(Object error);
/// No description provided for @localMusicFolderGenericName.
///
/// In es, this message translates to:
/// **'Carpeta seleccionada'**
String get localMusicFolderGenericName;
/// No description provided for @welcomeHeadline.
///
/// In es, this message translates to:
/// **'Tu mundo, en directo'**
String get welcomeHeadline;
/// No description provided for @welcomeBody.
///
/// In es, this message translates to:
/// **'53.412 emisoras de 238 países. Guardá tus favoritas, llevalas al auto y despertate con ellas.'**
String get welcomeBody;
/// No description provided for @welcomeBullet1Title.
///
/// In es, this message translates to:
/// **'Ecualizador por emisora'**
String get welcomeBullet1Title;
/// No description provided for @welcomeBullet1Subtitle.
///
/// In es, this message translates to:
/// **'Y un preset por dispositivo de salida'**
String get welcomeBullet1Subtitle;
/// No description provided for @welcomeBullet2Title.
///
/// In es, this message translates to:
/// **'Android Auto'**
String get welcomeBullet2Title;
/// No description provided for @welcomeBullet2Subtitle.
///
/// In es, this message translates to:
/// **'Tus favoritas y tu música local en el auto'**
String get welcomeBullet2Subtitle;
/// No description provided for @welcomeBullet3Title.
///
/// In es, this message translates to:
/// **'Alarmas musicales'**
String get welcomeBullet3Title;
/// No description provided for @welcomeBullet3Subtitle.
///
/// In es, this message translates to:
/// **'Con subida progresiva y modo vacaciones'**
String get welcomeBullet3Subtitle;
/// No description provided for @welcomeCtaLabel.
///
/// In es, this message translates to:
/// **'Empezar a escuchar'**
String get welcomeCtaLabel;
/// No description provided for @eqCustomActionEnableLabel.
///
/// In es, this message translates to:
/// **'Activar ecualizador'**
String get eqCustomActionEnableLabel;
/// No description provided for @eqCustomActionDisableLabel.
///
/// In es, this message translates to:
/// **'Desactivar ecualizador'**
String get eqCustomActionDisableLabel;
/// No description provided for @eqCustomActionPresetLabel.
///
/// In es, this message translates to:
/// **'Preset: {preset}'**
String eqCustomActionPresetLabel(String preset);
/// No description provided for @alarmCardVacationPausedBadge.
///
/// In es, this message translates to:
/// **'Pausada por vacaciones'**
String get alarmCardVacationPausedBadge;
/// No description provided for @alarmCardSchedulingFailedMessage.
///
/// In es, this message translates to:
/// **'Esta alarma no se pudo registrar en el sistema, así que podría no sonar.'**
String get alarmCardSchedulingFailedMessage;
/// No description provided for @alarmCardPreNoticeFailedMessage.
///
/// In es, this message translates to:
/// **'Esta alarma está programada, pero no se pudo activar su aviso previo.'**
String get alarmCardPreNoticeFailedMessage;
/// No description provided for @alarmDiagnosticsExactAlarmsTitle.
///
/// In es, this message translates to:
/// **'Programación de alarma exacta'**
String get alarmDiagnosticsExactAlarmsTitle;
/// No description provided for @alarmDiagnosticsExactAlarmsHint.
///
/// In es, this message translates to:
/// **'Permite que la alarma suene en el minuto exacto que elegiste, incluso con el teléfono en reposo.'**
String get alarmDiagnosticsExactAlarmsHint;
/// No description provided for @alarmDiagnosticsNotificationsTitle.
///
/// In es, this message translates to:
/// **'Notificaciones'**
String get alarmDiagnosticsNotificationsTitle;
/// No description provided for @alarmDiagnosticsNotificationsHint.
///
/// In es, this message translates to:
/// **'Necesarias para mostrar la alarma y el aviso previo.'**
String get alarmDiagnosticsNotificationsHint;
/// No description provided for @alarmDiagnosticsFullScreenTitle.
///
/// In es, this message translates to:
/// **'Pantalla completa de la alarma'**
String get alarmDiagnosticsFullScreenTitle;
/// No description provided for @alarmDiagnosticsFullScreenHint.
///
/// In es, this message translates to:
/// **'Permite que la pantalla de la alarma aparezca automáticamente, incluso con el teléfono bloqueado.'**
String get alarmDiagnosticsFullScreenHint;
/// No description provided for @alarmDiagnosticsBatteryTitle.
///
/// In es, this message translates to:
/// **'Optimización de batería'**
String get alarmDiagnosticsBatteryTitle;
/// No description provided for @alarmDiagnosticsBatteryHint.
///
/// In es, this message translates to:
/// **'Evita que el sistema cierre PluriWave en segundo plano para que la alarma pueda sonar.'**
String get alarmDiagnosticsBatteryHint;
/// No description provided for @alarmDiagnosticsNativeCountTitle.
///
/// In es, this message translates to:
/// **'Alarmas registradas en Android'**
String get alarmDiagnosticsNativeCountTitle;
/// No description provided for @alarmDiagnosticsNativeCountValue.
///
/// In es, this message translates to:
/// **'Registradas ahora mismo: {count}'**
String alarmDiagnosticsNativeCountValue(int count);
/// No description provided for @alarmDiagnosticsNativeCountAttentionHint.
///
/// In es, this message translates to:
/// **'Tenés una alarma activada, pero todavía ninguna está registrada en el sistema. Volvé a abrir PluriWave o solucioná primero los puntos de arriba.'**
String get alarmDiagnosticsNativeCountAttentionHint;
/// No description provided for @alarmDiagnosticsManufacturerLabel.
///
/// In es, this message translates to:
/// **'Fabricante'**
String get alarmDiagnosticsManufacturerLabel;
/// No description provided for @alarmDiagnosticsSdkLabel.
///
/// In es, this message translates to:
/// **'Versión de Android (SDK)'**
String get alarmDiagnosticsSdkLabel;
/// No description provided for @alarmDiagnosticsNeedsAttentionStatus.
///
/// In es, this message translates to:
/// **'Necesita atención'**
String get alarmDiagnosticsNeedsAttentionStatus;
/// No description provided for @alarmDiagnosticsAutostartTitle.
///
/// In es, this message translates to:
/// **'Un paso manual más en este teléfono'**
String get alarmDiagnosticsAutostartTitle;
/// No description provided for @alarmDiagnosticsAutostartBody.
///
/// In es, this message translates to:
/// **'Los teléfonos {manufacturer} suelen cerrar las apps que están en segundo plano para ahorrar batería. No hay ningún ajuste que PluriWave pueda activar por su cuenta: tenés que activar vos mismo el Inicio automático (a veces llamado \"Autostart\" o \"Actividad en segundo plano\"). Buscalo en Ajustes, dentro de Apps o Batería, o en la app de Seguridad del teléfono.'**
String alarmDiagnosticsAutostartBody(String manufacturer);
/// No description provided for @alarmDiagnosticsFixAction.
///
/// In es, this message translates to:
/// **'Solucionar'**
String get alarmDiagnosticsFixAction;
/// No description provided for @alarmDiagnosticsIntentUnavailable.
///
/// In es, this message translates to:
/// **'No se pudo abrir esa pantalla de ajustes en este teléfono. Buscala manualmente en Ajustes.'**
String get alarmDiagnosticsIntentUnavailable;
/// No description provided for @alarmDiagnosticsUnavailableHint.
///
/// In es, this message translates to:
/// **'Todavía no pudimos revisar tus ajustes de alarma.'**
String get alarmDiagnosticsUnavailableHint;
/// No description provided for @autoEqDisableOption.
///
/// In es, this message translates to:
/// **'Desactivar'**
String get autoEqDisableOption;
/// No description provided for @funcionPremium.
///
/// In es, this message translates to:
/// **'Función Premium'**
String get funcionPremium;
/// No description provided for @limiteAlarmasAlcanzado.
///
/// In es, this message translates to:
/// **'Has alcanzado el límite de 5 alarmas gratuitas.'**
String get limiteAlarmasAlcanzado;
/// No description provided for @desbloquearPremium.
///
/// In es, this message translates to:
/// **'Desbloquear Premium'**
String get desbloquearPremium;
/// No description provided for @restaurarCompras.
///
/// In es, this message translates to:
/// **'Restaurar compras'**
String get restaurarCompras;
/// No description provided for @compraError.
///
/// In es, this message translates to:
/// **'No se ha podido completar la compra. Inténtalo de nuevo.'**
String get compraError;
/// No description provided for @restauracionSinCompras.
///
/// In es, this message translates to:
/// **'No hemos encontrado ninguna compra anterior en esta cuenta.'**
String get restauracionSinCompras;
/// No description provided for @premiumActivo.
///
/// In es, this message translates to:
/// **'Premium activo'**
String get premiumActivo;
/// No description provided for @premiumHojaTitulo.
///
/// In es, this message translates to:
/// **'Desbloquea PluriWave Premium'**
String get premiumHojaTitulo;
/// No description provided for @premiumBeneficioSinAnuncios.
///
/// In es, this message translates to:
/// **'Sin publicidad en toda la app'**
String get premiumBeneficioSinAnuncios;
/// No description provided for @premiumBeneficioAndroidAuto.
///
/// In es, this message translates to:
/// **'Android Auto'**
String get premiumBeneficioAndroidAuto;
/// No description provided for @premiumBeneficioGrabacion.
///
/// In es, this message translates to:
/// **'Grabación de emisoras'**
String get premiumBeneficioGrabacion;
/// No description provided for @premiumBeneficioVacaciones.
///
/// In es, this message translates to:
/// **'Rangos de vacaciones para las alarmas'**
String get premiumBeneficioVacaciones;
/// No description provided for @premiumBeneficioAlarmasIlimitadas.
///
/// In es, this message translates to:
/// **'Alarmas ilimitadas (el plan gratuito permite hasta 5)'**
String get premiumBeneficioAlarmasIlimitadas;
/// No description provided for @premiumPagoUnico.
///
/// In es, this message translates to:
/// **'Pago único, para siempre. No es una suscripción.'**
String get premiumPagoUnico;
/// No description provided for @premiumAhoraNo.
///
/// In es, this message translates to:
/// **'Ahora no'**
String get premiumAhoraNo;
}
class _AppLocalizationsDelegate
extends LocalizationsDelegate<AppLocalizations> {
const _AppLocalizationsDelegate();
@override
Future<AppLocalizations> load(Locale locale) {
return SynchronousFuture<AppLocalizations>(lookupAppLocalizations(locale));
}
@override
bool isSupported(Locale locale) => <String>[
'ar',
'bn',
'de',
'en',
'es',
'fr',
'hi',
'id',
'it',
'ja',
'pt',
'ru',
'zh',
].contains(locale.languageCode);
@override
bool shouldReload(_AppLocalizationsDelegate old) => false;
}
AppLocalizations lookupAppLocalizations(Locale locale) {
// Lookup logic when only language code is specified.
switch (locale.languageCode) {
case 'ar':
return AppLocalizationsAr();
case 'bn':
return AppLocalizationsBn();
case 'de':
return AppLocalizationsDe();
case 'en':
return AppLocalizationsEn();
case 'es':
return AppLocalizationsEs();
case 'fr':
return AppLocalizationsFr();
case 'hi':
return AppLocalizationsHi();
case 'id':
return AppLocalizationsId();
case 'it':
return AppLocalizationsIt();
case 'ja':
return AppLocalizationsJa();
case 'pt':
return AppLocalizationsPt();
case 'ru':
return AppLocalizationsRu();
case 'zh':
return AppLocalizationsZh();
}
throw FlutterError(
'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely '
'an issue with the localizations generation tool. Please file an issue '
'on GitHub with a reproducible sample app and the gen-l10n configuration '
'that was used.',
);
}