import { ASparseMatrix } from "./amatrix.js";
import type { NzEntry } from "./api.js";
import { CSC } from "./csc.js";
import { CSR } from "./csr.js";
import { SparseVec } from "./vec.js";
export declare class Diag extends ASparseMatrix {
    static identity(m: number): Diag;
    data: SparseVec;
    constructor(data: SparseVec | number[]);
    nzEntries(): Generator<NzEntry, void, unknown>;
    at(m: number, n: number, safe?: boolean): number;
    setAt(m: number, n: number, v: number, safe?: boolean): this;
    nnz(): number;
    nnzCol(n: number): number;
    nnzRow(m: number): number;
    nzColRows(n: number): number[];
    nzColVals(n: number): number[];
    nzRowCols(m: number): number[];
    nzRowVals(m: number): number[];
    toDense(): any[];
    toCSC(): CSC;
    toCSR(): CSR;
}
//# sourceMappingURL=diag.d.ts.map