import { ClassifierBase } from '../base'; import { Params } from '../base/estimator'; import { SubsetSizeOption } from '../utils/paramResolvers'; import { DecisionTreeProps } from '../tree'; export interface BaggingClassifierProps extends DecisionTreeProps { nEstimators?: number; /** positive integer = absolute count; fraction in (0,1) = share of samples; 'all'/undefined = all */ maxSamples?: SubsetSizeOption; bootstrap?: boolean; randomState?: number; estimatorFactory?: (seed?: number) => { fit(X: number[][], y: number[]): void; predict(X: number[][]): number[]; }; } export declare class BaggingClassifier extends ClassifierBase { private nEstimators; private maxSamples?; private bootstrap; private randomState?; private estimatorFactory?; private treeProps; private estimators; private fitted; constructor(props?: BaggingClassifierProps); /** * NOTE: `estimatorFactory` is a function-valued param; it is returned * as-is (clone/setParams keep working), but an instance constructed with * a custom factory cannot be serialized with toJSON(). */ getParams(): Params; private defaultEstimator; fit(trainX: number[][], trainY: number[]): void; predict(testX: number[][]): number[]; }