import type { Attribs, Vec2Like } from "./api.js";
/**
 * Shape instancing group.
 *
 * @remarks
 * The `shape` arg can be an SVG shape `#id` defined elsewhere in the
 * document or set to `circle` or `rect` (default).
 *
 * The `size` arg is only used for the latter two shape types and
 * defines the radius or width respectively.
 *
 * @param pts - points
 * @param shape - shape type
 * @param size - point size/radius
 * @param attribs - attributes
 */
export declare const points: (pts: Iterable<Vec2Like>, shape: string, size?: number, attribs?: Attribs, ...body: any[]) => any[];
/**
 * Similar to {@link points}, but takes points from a single large flat
 * buffer of coordinates with arbitrary striding.
 *
 * @remarks
 * In addition to `shape` and `size`, the following attribs can be used
 * to define the index range and strides:
 *
 * - `start` - start index (default: 0)
 * - `num` - number of points (default: buffer length/2)
 * - `cstride` - component stride (default: 1)
 * - `estride` - element stride (default: 2)
 *
 * @param pts - flat point buffer
 * @param shape - shape type
 * @param size - point size/radius
 * @param attribs - other attributes
 */
export declare const packedPoints: (pts: ArrayLike<number>, shape: string, size?: number, attribs?: Attribs, ...body: any[]) => any[];
//# sourceMappingURL=points.d.ts.map