import type { Ref, RefList, RefMap, RefSet } from 'property-graph'; import type { BufferViewUsage } from '../constants.js'; import type { Property } from '../properties/index.js'; export type UnknownRef = Ref | RefList | RefSet | RefMap; export declare function equalsRef(refA: Ref, refB: Ref): boolean; export declare function equalsRefSet | RefSet, B extends RefList | RefSet>(refSetA: A, refSetB: B): boolean; export declare function equalsRefMap(refMapA: RefMap, refMapB: RefMap): boolean; export declare function equalsArray(a: ArrayLike | null, b: ArrayLike | null): boolean; export declare function equalsObject(_a: unknown, _b: unknown): boolean; export type RefAttributes = Record; export interface AccessorRefAttributes extends RefAttributes { /** Usage role of an accessor reference. */ usage: BufferViewUsage | string; } export interface TextureRefAttributes extends RefAttributes { /** Bitmask for {@link TextureChannel TextureChannels} used by a texture reference. */ channels: number; /** * Specifies that the texture contains color data (base color, emissive, …), * rather than non-color data (normal maps, metallic roughness, …). Used * when tuning texture compression settings. */ isColor?: boolean; } export declare function isArray(value: unknown): boolean;