import type { MultiFn1O } from "@thi.ng/defmulti"; import type { CubicOpts, IShape, IShape2, IShape3 } from "./api.js"; import { Path } from "./api/path.js"; import { Path3 } from "./api/path3.js"; export interface AsPathOpts extends CubicOpts { /** * If true (default: false), creates path consisting of linear segments * only. */ linear: boolean; } /** * Function overrides for {@link asPath}. */ export type AsPathFn = { (shape: IShape2, opts?: Partial): Path; (shape: IShape3, opts?: Partial): Path3; } & MultiFn1O, Path | Path3>; /** * Converts given shape boundary into a {@link Path} (by default via * {@link asCubic} and {@link pathFromCubics}). * * @remarks * If {@link AsPathOpts.linear} is enabled the shape will be converted into a * path consisting only of linear segments (NOT cubic beziers). As an interim * step this will involve a conversion via {@link asPolygon} or * {@link asPolyline} with default opts. * * @param src * @param opts */ export declare const asPath: AsPathFn; //# sourceMappingURL=as-path.d.ts.map