import { Matrix } from "transformation-matrix"; import { FiringState } from "./firing-state"; export interface LazyEvaluative { /** * Calculate value for gun * @param state Current firing state */ calc(state: FiringState): T; } export declare type TConstantOrLazy = T | LazyEvaluative; export declare const calcValueFromConstantOrLazy: (stateConst: FiringState, value: TConstantOrLazy) => T; export declare const calcTransFormFromConstantOrLazy: (stateConst: FiringState, value: TConstantOrLazy) => Matrix;