Vinyl
    Preparing search index...

    Type Alias ValidProviderDependencies<Deps, Dm>

    ValidProviderDependencies: Deps extends object
        ? {
            readonly [K in keyof Deps]: K extends keyof Dm
                ? Dm[K] extends Factory<infer R>
                    ? R extends Deps[K]
                        ? K extends FlattenDependencies<Dm, K>
                            ? NeverCyclicDependency<K, FlattenDependencies<Dm, K>>
                            : Deps[K]
                        : NeverWrongDependencyType<ReturnType<Dm[K]>, Deps[K]>
                    : NeverMissingDependency<K>
                : NeverMissingDependency<K>
        }
        : NeverInvalidDependenciesType

    Validate that the dependencies of a factory are not cyclical and that the return type of the dependency is a subtype of what's needed.

    Type Parameters

    • Deps
    • Dm