export interface ConfigFileProviderProps> { /** * The bucketName of where to upload the file */ bucketName: string; /** * The filename for the config file. Supports .yml, .yaml, .json, or .js * extensions. */ fileName: string; /** * When filename ends in .js a file is built to export the config object * into the global js scope. The sets the export name within the js file * * @default CONFIG_FILE * * @example `var CONFIG_FILE = JSON.parse('${stringified}');` but can be * any value you would like * `var MY_CUSTOM_EXPORT_NAME_IS_GUARANTEED_UNIQUE = JSON.parse(...);` */ jsExportName?: string; /** * Will go to the file in S3 and merge the passed configuration with the * existing configuration that is already in the file in S3. Useful when * only part of the config changes by environment but the rest is fixed * and complex */ mergeExisting?: boolean; /** * The actual configuration that will get turned into the file. Library * * - uses YAML.stringify(config) for .yaml and .yml files * - uses JSON.stringify(config) for .json files * - creates a js file by stringifying the object with JSON.stringify and * wrapping it with `var CONFIG_FILE = JSON.parse('${stringified}');`. * Makes it globally available to the code in the browser via *