Skip to main content
Glama
ssv445

Lorem Ipsum MCP Server

by ssv445
ConfigProvider.d.ts12.6 kB
/** * @since 2.0.0 */ import type * as Config from "./Config.js"; import type * as ConfigError from "./ConfigError.js"; import type * as PathPatch from "./ConfigProviderPathPatch.js"; import type * as Context from "./Context.js"; import type * as Effect from "./Effect.js"; import type { LazyArg } from "./Function.js"; import type * as HashSet from "./HashSet.js"; import type { Pipeable } from "./Pipeable.js"; /** * @since 2.0.0 * @category symbols */ export declare const ConfigProviderTypeId: unique symbol; /** * @since 2.0.0 * @category symbols */ export type ConfigProviderTypeId = typeof ConfigProviderTypeId; /** * @since 2.0.0 * @category symbols */ export declare const FlatConfigProviderTypeId: unique symbol; /** * @since 2.0.0 * @category symbols */ export type FlatConfigProviderTypeId = typeof FlatConfigProviderTypeId; /** * A ConfigProvider is a service that provides configuration given a description * of the structure of that configuration. * * @since 2.0.0 * @category models */ export interface ConfigProvider extends ConfigProvider.Proto, Pipeable { /** * Loads the specified configuration, or fails with a config error. */ load<A>(config: Config.Config<A>): Effect.Effect<A, ConfigError.ConfigError>; /** * Flattens this config provider into a simplified config provider that knows * only how to deal with flat (key/value) properties. */ readonly flattened: ConfigProvider.Flat; } /** * @since 2.0.0 */ export declare namespace ConfigProvider { /** * @since 2.0.0 * @category models */ interface Proto { readonly [ConfigProviderTypeId]: ConfigProviderTypeId; } /** * A simplified config provider that knows only how to deal with flat * (key/value) properties. Because these providers are common, there is * special support for implementing them. * * @since 2.0.0 * @category models */ interface Flat { readonly [FlatConfigProviderTypeId]: FlatConfigProviderTypeId; readonly patch: PathPatch.PathPatch; load<A>(path: ReadonlyArray<string>, config: Config.Config.Primitive<A>, split?: boolean): Effect.Effect<Array<A>, ConfigError.ConfigError>; enumerateChildren(path: ReadonlyArray<string>): Effect.Effect<HashSet.HashSet<string>, ConfigError.ConfigError>; } /** * @since 2.0.0 * @category models */ interface FromMapConfig { readonly pathDelim: string; readonly seqDelim: string; } /** * @since 2.0.0 * @category models */ interface FromEnvConfig { readonly pathDelim: string; readonly seqDelim: string; } /** * @since 1.0.0 * @category models */ type KeyComponent = KeyName | KeyIndex; /** * @since 1.0.0 * @category models */ interface KeyName { readonly _tag: "KeyName"; readonly name: string; } /** * @since 1.0.0 * @category models */ interface KeyIndex { readonly _tag: "KeyIndex"; readonly index: number; } } /** * The service tag for `ConfigProvider`. * * @since 2.0.0 * @category context */ export declare const ConfigProvider: Context.Tag<ConfigProvider, ConfigProvider>; /** * Creates a new config provider. * * @since 2.0.0 * @category constructors */ export declare const make: (options: { readonly load: <A>(config: Config.Config<A>) => Effect.Effect<A, ConfigError.ConfigError>; readonly flattened: ConfigProvider.Flat; }) => ConfigProvider; /** * Creates a new flat config provider. * * @since 2.0.0 * @category constructors */ export declare const makeFlat: (options: { readonly load: <A>(path: ReadonlyArray<string>, config: Config.Config.Primitive<A>, split: boolean) => Effect.Effect<Array<A>, ConfigError.ConfigError>; readonly enumerateChildren: (path: ReadonlyArray<string>) => Effect.Effect<HashSet.HashSet<string>, ConfigError.ConfigError>; readonly patch: PathPatch.PathPatch; }) => ConfigProvider.Flat; /** * A config provider that loads configuration from context variables * * **Options**: * * - `pathDelim`: The delimiter for the path segments (default: `"_"`). * - `seqDelim`: The delimiter for the sequence of values (default: `","`). * * @since 2.0.0 * @category constructors */ export declare const fromEnv: (options?: Partial<ConfigProvider.FromEnvConfig>) => ConfigProvider; /** * Constructs a new `ConfigProvider` from a key/value (flat) provider, where * nesting is embedded into the string keys. * * @since 2.0.0 * @category constructors */ export declare const fromFlat: (flat: ConfigProvider.Flat) => ConfigProvider; /** * Constructs a new `ConfigProvider` from a JSON object. * * @since 2.0.0 * @category constructors */ export declare const fromJson: (json: unknown) => ConfigProvider; /** * Constructs a ConfigProvider using a map and the specified delimiter string, * which determines how to split the keys in the map into path segments. * * @since 2.0.0 * @category constructors */ export declare const fromMap: (map: Map<string, string>, config?: Partial<ConfigProvider.FromMapConfig>) => ConfigProvider; /** * Returns a new config provider that will automatically convert all property * names to constant case. This can be utilized to adapt the names of * configuration properties from the default naming convention of camel case * to the naming convention of a config provider. * * @since 2.0.0 * @category combinators */ export declare const constantCase: (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically tranform all path * configuration names with the specified function. This can be utilized to * adapt the names of configuration properties from one naming convention to * another. * * @since 2.0.0 * @category utils */ export declare const mapInputPath: { /** * Returns a new config provider that will automatically tranform all path * configuration names with the specified function. This can be utilized to * adapt the names of configuration properties from one naming convention to * another. * * @since 2.0.0 * @category utils */ (f: (path: string) => string): (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically tranform all path * configuration names with the specified function. This can be utilized to * adapt the names of configuration properties from one naming convention to * another. * * @since 2.0.0 * @category utils */ (self: ConfigProvider, f: (path: string) => string): ConfigProvider; }; /** * Returns a new config provider that will automatically convert all property * names to kebab case. This can be utilized to adapt the names of * configuration properties from the default naming convention of camel case * to the naming convention of a config provider. * * @since 2.0.0 * @category combinators */ export declare const kebabCase: (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically convert all property * names to lower case. This can be utilized to adapt the names of * configuration properties from the default naming convention of camel case * to the naming convention of a config provider. * * @since 2.0.0 * @category combinators */ export declare const lowerCase: (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically nest all * configuration under the specified property name. This can be utilized to * aggregate separate configuration sources that are all required to load a * single configuration value. * * @since 2.0.0 * @category utils */ export declare const nested: { /** * Returns a new config provider that will automatically nest all * configuration under the specified property name. This can be utilized to * aggregate separate configuration sources that are all required to load a * single configuration value. * * @since 2.0.0 * @category utils */ (name: string): (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically nest all * configuration under the specified property name. This can be utilized to * aggregate separate configuration sources that are all required to load a * single configuration value. * * @since 2.0.0 * @category utils */ (self: ConfigProvider, name: string): ConfigProvider; }; /** * Returns a new config provider that preferentially loads configuration data * from this one, but which will fall back to the specified alternate provider * if there are any issues loading the configuration from this provider. * * @since 2.0.0 * @category utils */ export declare const orElse: { /** * Returns a new config provider that preferentially loads configuration data * from this one, but which will fall back to the specified alternate provider * if there are any issues loading the configuration from this provider. * * @since 2.0.0 * @category utils */ (that: LazyArg<ConfigProvider>): (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that preferentially loads configuration data * from this one, but which will fall back to the specified alternate provider * if there are any issues loading the configuration from this provider. * * @since 2.0.0 * @category utils */ (self: ConfigProvider, that: LazyArg<ConfigProvider>): ConfigProvider; }; /** * Returns a new config provider that will automatically un-nest all * configuration under the specified property name. This can be utilized to * de-aggregate separate configuration sources that are all required to load a * single configuration value. * * @since 2.0.0 * @category utils */ export declare const unnested: { /** * Returns a new config provider that will automatically un-nest all * configuration under the specified property name. This can be utilized to * de-aggregate separate configuration sources that are all required to load a * single configuration value. * * @since 2.0.0 * @category utils */ (name: string): (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically un-nest all * configuration under the specified property name. This can be utilized to * de-aggregate separate configuration sources that are all required to load a * single configuration value. * * @since 2.0.0 * @category utils */ (self: ConfigProvider, name: string): ConfigProvider; }; /** * Returns a new config provider that will automatically convert all property * names to upper case. This can be utilized to adapt the names of * configuration properties from the default naming convention of camel case * to the naming convention of a config provider. * * @since 2.0.0 * @category combinators */ export declare const snakeCase: (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that will automatically convert all property * names to upper case. This can be utilized to adapt the names of * configuration properties from the default naming convention of camel case * to the naming convention of a config provider. * * @since 2.0.0 * @category combinators */ export declare const upperCase: (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that transforms the config provider with the * specified function within the specified path. * * @since 2.0.0 * @category combinators */ export declare const within: { /** * Returns a new config provider that transforms the config provider with the * specified function within the specified path. * * @since 2.0.0 * @category combinators */ (path: ReadonlyArray<string>, f: (self: ConfigProvider) => ConfigProvider): (self: ConfigProvider) => ConfigProvider; /** * Returns a new config provider that transforms the config provider with the * specified function within the specified path. * * @since 2.0.0 * @category combinators */ (self: ConfigProvider, path: ReadonlyArray<string>, f: (self: ConfigProvider) => ConfigProvider): ConfigProvider; }; //# sourceMappingURL=ConfigProvider.d.ts.map

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ssv445/lorem-ipsum-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server