import { type ConditionalOrder } from './ConditionalOrder';
import { ConditionalOrderParams } from './types';
export type FromParams<D, S> = (params: ConditionalOrderParams) => ConditionalOrder<D, S>;
export type ConditionalOrderRegistry = Record<string, FromParams<unknown, unknown>>;
/**
 * Factory for conditional orders.
 *
 * It uses a registry to instantiate the correct conditional order based on the handler.
 *
 * Knowing the handler, the factory will instantiate the correct conditional order using the staticInput data.
 */
export declare class ConditionalOrderFactory {
    knownOrderTypes: ConditionalOrderRegistry;
    constructor(registry: ConditionalOrderRegistry);
    /**
     * Get the conditional order factory from the conditional order parameters
     */
    fromParams(params: ConditionalOrderParams): ConditionalOrder<unknown, unknown> | undefined;
}
