import type { _MLCActivationDescriptor } from "./MLCActivationDescriptor.js";
import type { _MLCLayer } from "./MLCLayer.js";
export declare class _MLCActivationLayer extends _MLCLayer {
    static alloc(): _MLCActivationLayer;
    static new(): _MLCActivationLayer;
    init(): _MLCActivationLayer;
    /**
     * @abstract Create an activation layer @param descriptor The activation descriptor @return A new activation layer
     */
    static layerWithDescriptor$(descriptor: _MLCActivationDescriptor): _MLCActivationLayer;
    /**
     * @abstract Create a leaky ReLU activation layer @param negativeSlope Controls the angle of the negative slope @return A new activation layer
     */
    static leakyReLULayerWithNegativeSlope$(negativeSlope: number): _MLCActivationLayer;
    /**
     * @abstract Create a linear activation layer @param scale The scale factor @param bias The bias value @return A new activation layer
     */
    static linearLayerWithScale$bias$(scale: number, bias: number): _MLCActivationLayer;
    /**
     * @abstract Create a soft plus activation layer @param beta The beta value for the softplus formation @return A new activation layer
     */
    static softPlusLayerWithBeta$(beta: number): _MLCActivationLayer;
    /**
     * @abstract Create an ELU activation layer @param a The \p a value for the ELU formation @return A new activation layer
     */
    static eluLayerWithA$(a: number): _MLCActivationLayer;
    /**
     * @abstract Create a ReLUN activation layer @discussion This can be used to implement layers such as ReLU6 for example. @param a The \p a value @param b The \p b value @return A new activation layer
     */
    static relunLayerWithA$b$(a: number, b: number): _MLCActivationLayer;
    /**
     * @abstract Create a CELU activation layer @param a The \p a value for the CELU formation @return A new activation layer
     */
    static celuLayerWithA$(a: number): _MLCActivationLayer;
    /**
     * @abstract Create a hard shrink activation layer @param a The \p a value for the hard shrink formation @return A new activation layer
     */
    static hardShrinkLayerWithA$(a: number): _MLCActivationLayer;
    /**
     * @abstract Create a soft shrink activation layer @param a The \p a value for the soft shrink formation @return A new activation layer
     */
    static softShrinkLayerWithA$(a: number): _MLCActivationLayer;
    /**
     * @abstract Create a threshold activation layer @param threshold The value to threshold at @param replacement The value to replace with @return A new activation layer
     */
    static thresholdLayerWithThreshold$replacement$(threshold: number, replacement: number): _MLCActivationLayer;
    /**
     * @abstract Create a clamp activation layer @param minValue The minimum range used by clamp @param maxValue The maximum range used by clamp @return A new activation layer
     */
    static clampLayerWithMinValue$maxValue$(minValue: number, maxValue: number): _MLCActivationLayer;
    /** @abstract Create a ReLU activation layer @return A new activation layer */
    static reluLayer(): _MLCActivationLayer;
    /** @abstract Create a ReLU6 activation layer @return A new activation layer */
    static relu6Layer(): _MLCActivationLayer;
    /** @abstract Create a leaky ReLU activation layer @return A new activation layer */
    static leakyReLULayer(): _MLCActivationLayer;
    /** @abstract Create a sigmoid activation layer @return A new activation layer */
    static sigmoidLayer(): _MLCActivationLayer;
    /** @abstract Create a hard sigmoid activation layer @return A new activation layer */
    static hardSigmoidLayer(): _MLCActivationLayer;
    /** @abstract Create a tanh activation layer @return A new activation layer */
    static tanhLayer(): _MLCActivationLayer;
    /** @abstract Create an absolute activation layer @return A new activation layer */
    static absoluteLayer(): _MLCActivationLayer;
    /** @abstract Create a soft plus activation layer @return A new activation layer */
    static softPlusLayer(): _MLCActivationLayer;
    /** @abstract Create a soft sign activation layer @return A new activation layer */
    static softSignLayer(): _MLCActivationLayer;
    /** @abstract Create an ELU activation layer @return A new activation layer */
    static eluLayer(): _MLCActivationLayer;
    /** @abstract Create a log sigmoid activation layer @return A new activation layer */
    static logSigmoidLayer(): _MLCActivationLayer;
    /** @abstract Create a SELU activation layer @return A new activation layer */
    static seluLayer(): _MLCActivationLayer;
    /** @abstract Create a CELU activation layer @return A new activation layer */
    static celuLayer(): _MLCActivationLayer;
    /** @abstract Create a hard shrink activation layer @return A new activation layer */
    static hardShrinkLayer(): _MLCActivationLayer;
    /** @abstract Create a soft shrink activation layer @return A new activation layer */
    static softShrinkLayer(): _MLCActivationLayer;
    /** @abstract Create a TanhShrink activation layer @return A new activation layer */
    static tanhShrinkLayer(): _MLCActivationLayer;
    /** @abstract Create a GELU activation layer @return A new activation layer */
    static geluLayer(): _MLCActivationLayer;
    /** @abstract Create a hardswish activation layer @return A new activation layer */
    static hardSwishLayer(): _MLCActivationLayer;
    /** @property descriptor @abstract The activation descriptor */
    descriptor(): _MLCActivationDescriptor;
}
