export type ShaderType = 'pbr' | 'unlit' | 'custom'; export interface MaterialAssetData { name: string; shader: ShaderType; albedo: [number, number, number, number]; metallic: number; roughness: number; albedoTexture?: string; emissive?: [number, number, number]; emissiveIntensity?: number; normalTexture?: string; metallicRoughnessTexture?: string; texTilingX?: number; texTilingY?: number; /** Path to custom .wgsl fragment shader (e.g. "shaders/my_shader.wgsl") */ customShaderPath?: string; /** Override values for custom shader @property declarations */ customUniforms?: Record; /** Texture assignments for custom shader @texture declarations */ customTextures?: Record; } export declare function createDefaultMaterialAsset(name: string): MaterialAssetData; export declare function serializeMaterialAsset(data: MaterialAssetData): string; export declare function deserializeMaterialAsset(json: string): MaterialAssetData; //# sourceMappingURL=material-asset.d.ts.map