UNPKG

ng-masonry-grid

Version:

Angular 6+ masonry grid component with CSS3 animations on scroll.

99 lines (98 loc) 3.29 kB
import { Observable } from 'rxjs'; /** * Masonry Grid item */ export declare class MasonryGridItem { element?: any; index?: number; } /** * Masonry Options */ export interface MasonryOptions { itemSelector?: string; columnWidth?: any; percentPosition?: boolean; gutter?: any; stamp?: string; fitWidth?: boolean; originLeft?: boolean; originTop?: boolean; addStatus?: string; horizontalOrder?: boolean; containerStyle?: {}; transitionDuration?: any; resize?: boolean; initLayout?: boolean; } /** * Masonry Object */ export declare class Masonry { items?: any[]; masonry?(): void; masonry?(eventName: string, listener: any): void; layout?(): void; layoutItems?(items: any[], isStill?: boolean): void; stamp?(elements: any[]): void; unstamp?(elements: any[]): void; appended?(elements: any[]): void; prepended?(elements: any[]): void; addItems?(elements: any[]): void; remove?(elements: any[]): void; on?(eventName: string, listener: any): void; off?(eventName: string, listener: any): void; once?(eventName: string, listener: any): void; reloadItems?(): void; reOrderItems?(): void; destroy?(): void; getItemElements?(): any[]; data?(element: Element): Masonry; removeAnimation?(): void; setAddStatus?(value: string): void; removeItem?(item: Element): Observable<MasonryGridItem>; removeFirstItem?(): Observable<MasonryGridItem>; removeAllItems?(): Observable<MasonryGridItem>; constructor(selector: string | Element, options?: MasonryOptions); } /** * Scroll Animation options */ export interface AnimationOptions { animationEffect?: string; minDuration?: number; maxDuration?: number; viewportFactor?: number; } export declare type ElementSelector = Element | NodeList | Array<Element> | string; /** interface for an image currently loading or completed */ export interface LoadingImage { img: HTMLImageElement; isLoaded: boolean; } export interface ImagesLoadedCallback { (instance?: ImagesLoaded): void; } export interface ImagesLoadedListener { (instance: ImagesLoaded, image?: LoadingImage): void; } export interface ImagesLoaded { images: Array<LoadingImage>; new (elem: ElementSelector, callback: ImagesLoadedCallback): ImagesLoaded; on(event: string, listener: ImagesLoadedListener): void; off(event: string, listener: ImagesLoadedListener): void; once(event: string, listener: ImagesLoadedListener): void; } export interface ImagesLoadedOptions { background: true | string; } export interface ImagesLoadedConstructor { /** * Creates a new ImagesLoaded object with the provided callback * @param elem Element, NodeList, Element array, or selector string for images to watch * @param options object that can tell imagesloaded to watch background images as well * @param callback function triggered after all images have been loaded */ (elem: ElementSelector, options: ImagesLoadedOptions, callback?: ImagesLoadedCallback): ImagesLoaded; (elem: ElementSelector, callback?: ImagesLoadedCallback): ImagesLoaded; }