import type { CoreShaderManager, EffectMap, ShaderMap } from '../core/CoreShaderManager.js'; import type { ExtractProps } from '../core/CoreTextureManager.js'; import type { EffectDesc } from '../core/renderers/webgl/shaders/effects/ShaderEffect.js'; import type { BaseShaderController } from './ShaderController.js'; type OptionalName = T extends string ? T : never; type MapEffectProps = { [K in Effects[number] as OptionalName]: ExtractProps; }; export type DynamicEffects = { [K in keyof T]: EffectDesc; }; export declare class DynamicShaderController implements BaseShaderController { readonly shader: InstanceType; private resolvedProps; props: MapEffectProps; type: 'DynamicShader'; constructor(shader: InstanceType, props: ExtractProps, shManager: CoreShaderManager); getResolvedProps(): import("../core/renderers/webgl/shaders/DynamicShader.js").DynamicShaderProps; } export {};