declare const _default: "\n#if defined(LIGHT{i})\n\n    uniform vec3 light{i}_color;\n\n    #if LIGHT{i}TYPE == DIRECTIONAL\n        uniform vec3 light{i}_direction;\n    #else\n\n        #define LIT_CODE_LIGHTS_POINT // include functionality for point lights\n\n        uniform vec3 light{i}_position;\n        uniform float light{i}_radius;\n\n        #if LIGHT{i}TYPE == SPOT\n\n            #define LIT_CODE_LIGHTS_SPOT // include functionality for spot lights\n\n            uniform vec3 light{i}_direction;\n            uniform float light{i}_innerConeAngle;\n            uniform float light{i}_outerConeAngle;\n        #endif\n    #endif\n\n    // area lights\n    #if LIGHT{i}SHAPE != PUNCTUAL\n\n        #define LIT_CODE_FALLOFF_SQUARED // include functionality for inverse squared falloff\n\n        #if LIGHT{i}TYPE == DIRECTIONAL\n            uniform vec3 light{i}_position;\n        #endif\n        uniform vec3 light{i}_halfWidth;\n        uniform vec3 light{i}_halfHeight;\n    #else\n\n        #if LIGHT{i}FALLOFF == LINEAR\n            #define LIT_CODE_FALLOFF_LINEAR // include functionality for linear falloff\n        #endif\n\n        #if LIGHT{i}FALLOFF == INVERSESQUARED\n            #define LIT_CODE_FALLOFF_SQUARED // include functionality for inverse squared falloff\n        #endif\n\n    #endif\n\n    // shadow casting\n    #if defined(LIGHT{i}CASTSHADOW)\n\n        uniform mat4 light{i}_shadowMatrix;\n        uniform float light{i}_shadowIntensity;\n        uniform vec4 light{i}_shadowParams; // width, height, bias, radius\n\n        #if LIGHT{i}SHADOWTYPE == PCSS_32F\n            uniform float light{i}_shadowSearchArea;\n            uniform vec4 light{i}_cameraParams;\n            #if LIGHT{i}TYPE == DIRECTIONAL\n                uniform vec4 light{i}_softShadowParams;\n            #endif\n        #endif\n\n        // directional (cascaded) shadows\n        #if LIGHT{i}TYPE == DIRECTIONAL\n            uniform mat4 light{i}_shadowMatrixPalette[4];\n            uniform vec4 light{i}_shadowCascadeDistances;\n            uniform int light{i}_shadowCascadeCount;\n            uniform float light{i}_shadowCascadeBlend;\n        #endif\n\n        #if LIGHT{i}TYPE == OMNI\n            #if defined(LIGHT{i}SHADOW_PCF)\n                uniform samplerCubeShadow light{i}_shadowMap;\n            #else\n                uniform samplerCube light{i}_shadowMap;\n            #endif\n        #else\n            #if defined(LIGHT{i}SHADOW_PCF)\n                uniform sampler2DShadow light{i}_shadowMap;\n            #else\n                uniform sampler2D light{i}_shadowMap;\n            #endif\n        #endif\n\n    #endif\n\n    // cookie\n    #if defined(LIGHT{i}COOKIE)\n\n        #define LIT_CODE_COOKIE // include functionality for cookies\n\n        #if LIGHT{i}TYPE == OMNI\n            uniform samplerCube light{i}_cookie;\n            uniform float light{i}_cookieIntensity;\n            #if !defined(LIGHT{i}CASTSHADOW)\n                uniform mat4 light{i}_shadowMatrix;\n            #endif\n        #endif\n\n        #if LIGHT{i}TYPE == SPOT\n            uniform sampler2D light{i}_cookie;\n            uniform float light{i}_cookieIntensity;\n            #if !defined(LIGHT{i}CASTSHADOW)\n                uniform mat4 light{i}_shadowMatrix;\n            #endif\n            #if defined(LIGHT{i}COOKIE_TRANSFORM)\n                uniform vec4 light{i}_cookieMatrix;\n                uniform vec2 light{i}_cookieOffset;\n            #endif\n        #endif\n    #endif\n#endif\n";
export default _default;
