import { EventEmitter } from "../../stencil-public-runtime"; import { LikeProxy } from "../like-controller/like-proxy"; import { Feature } from "geojson"; import { MapGeoJSONFeature } from "maplibre-gl"; export declare class LikeButton { el: HTMLGlLikeButtonElement; count: number; liked: boolean; proxy: LikeProxy; likeCtrl: HTMLGlLikeControllerElement; restCtrl: HTMLGlRestControllerElement; /** * The attribute which stores the number of likes this feature has received */ readonly attribute: string; /** * Whether or not this like button is disabled */ readonly disabled: boolean; /** * The feature this like button is for */ readonly feature: Feature | MapGeoJSONFeature; /** * The icon for the like button if the user has not liked the feature */ readonly iconNo: string; /** * The icon for the like button if the user */ readonly iconYes: string; /** * The HTTP method this like button uses to communicate a like */ readonly method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE"; /** * The cors mode this like button uses to communicate */ readonly requestMode: RequestMode; /** * The authentication token this like button uses when communicating */ readonly token: string; /** * The url to the endpoint which which the like button communicates. * Most likely this will be the end point of a features-api instance. */ readonly url: string; /** * An event emitted when the user presses the like button */ glLike: EventEmitter<{ success: boolean; feature: Feature | MapGeoJSONFeature; action: "like" | "unlike"; client_id: string; }>; componentWillLoad(): Promise; setState(): Promise; private toggle; private likeClicked; render(): any; }