@exadel/esl
Version:
Exadel Smart Library (ESL) is the lightweight custom elements library that provide a set of super-flexible components
22 lines (21 loc) • 1.1 kB
TypeScript
import { ESLCarouselPlugin } from '../esl-carousel.plugin';
import { ESLCarouselSlideEvent } from '../../core/esl-carousel.events';
export interface ESLCarouselClassBehaviourConfig {
mode?: 'default' | 'proactive';
}
/**
* Plugin for {@link ESLCarousel} that allows to control the `container-class` feature behavior.
*
* Supports two modes:
* - `default`: do not change default behavior - adds/removes classes on the container element after slides have changed
* - `proactive`: adds/removes classes on the container element proactively as soon as change starts
*/
export declare class ESLCarouselClassBehaviourMixin extends ESLCarouselPlugin<ESLCarouselClassBehaviourConfig> {
static is: string;
static DEFAULT_CONFIG: ESLCarouselClassBehaviourConfig;
static DEFAULT_CONFIG_KEY: keyof ESLCarouselClassBehaviourConfig;
protected onConfigChange(): void;
/** Resolves the container classes from given slide element */
protected getClasses($slide: HTMLElement): string | undefined;
protected onSlideChange({ $slidesBefore, $slidesAfter }: ESLCarouselSlideEvent): void;
}