@disjukr/croquis-js
Version:
drawing tool library
17 lines (16 loc) • 1.04 kB
TypeScript
import { StylusState } from '../stylus';
import type { StrokeProtocol, StrokeDrawingContext, ResultOfStrokeProtocol, StrokeDrawingContextFromProtocol, ConfigOfStrokeProtocol } from '../stroke-protocol';
export interface SnakeConfig<TProxyTarget extends StrokeProtocol = any> {
tailCount: number;
weight: number;
catchUp: boolean;
targetConfig: ConfigOfStrokeProtocol<TProxyTarget>;
}
export declare const defaultSnakeConfig: Omit<SnakeConfig<any>, 'targetConfig'>;
export interface SnakeState<TProxyTarget extends StrokeProtocol = any> {
targetDrawingContext: StrokeDrawingContextFromProtocol<TProxyTarget>;
stylusStates: StylusState[];
update(): void;
}
export declare type SnakeDrawingContext<TProxyTarget extends StrokeProtocol = any> = StrokeDrawingContext<SnakeConfig<TProxyTarget>, SnakeState<TProxyTarget>>;
export declare function getStroke<TProxyTarget extends StrokeProtocol>(target: TProxyTarget): StrokeProtocol<SnakeConfig<TProxyTarget>, SnakeState<TProxyTarget>, ResultOfStrokeProtocol<TProxyTarget>>;