import { AssetBase, IArrayBufferViewClass } from '@awayjs/core';
import { AttributesBuffer } from './AttributesBuffer';
export declare class AttributesView extends AssetBase {
    static assetType: string;
    /**
     *
     *
     */
    get assetType(): string;
    _cloneCache: AttributesView;
    _attributesBuffer: AttributesBuffer;
    _bufferDirty: boolean;
    private _size;
    private _dimensions;
    private _unsigned;
    _index: number;
    _arrayClass: IArrayBufferViewClass;
    normalized: boolean;
    get attributesBuffer(): AttributesBuffer;
    /**
     *
     * @returns {number}
     */
    get size(): number;
    set size(value: number);
    /**
     *
     * @returns {number}
     */
    get dimensions(): number;
    set dimensions(value: number);
    get unsigned(): boolean;
    get count(): number;
    set count(value: number);
    get offset(): number;
    get length(): number;
    get stride(): number;
    /**
     *
     */
    constructor(arrayClass: IArrayBufferViewClass, dimensions: number, count?: number, unsigned?: boolean);
    constructor(arrayClass: IArrayBufferViewClass, dimensions: number, attributesBuffer?: AttributesBuffer, unsigned?: boolean);
    set(array: Array<number>, offset?: number): any;
    set(arrayBufferView: ArrayBufferView, offset?: number): any;
    get(count: number, offset?: number): ArrayBufferView;
    _internalClone(attributesBuffer: AttributesBuffer): AttributesView;
    clone(attributesBuffer?: AttributesBuffer): AttributesView;
    invalidate(): void;
    /**
     * @inheritDoc
     */
    dispose(): void;
}
//# sourceMappingURL=AttributesView.d.ts.map