@peekalink/core
Version:
Peekalink API client library
49 lines • 1.51 kB
TypeScript
import "isomorphic-unfetch";
import type { LinkPreview, PeekalinkLinkPreviewRequest } from "./types";
/**
* Default Peekalink API endpoint URL
*/
export declare const DEFAULT_PEEKALINK_ENDPOINT = "https://api.peekalink.io";
/**
* Options to pass to a Peekalink request
*/
export type PeeaklinkRequestOptions = Omit<PeekalinkLinkPreviewRequest, "link">;
/**
* Options to pass to the Peekalink client
*/
export type PeeaklinkClientOptions = {
/**
* Peekalink API key
*/
apiKey: string;
/**
* Peekalink API endpoint URL (without trailing slash). Defaults to the
* official Peekalink API endpoint (https://api.peekalink.io).
*/
endpoint?: string;
/**
* Default options to pass to every Peekalink request
*/
defaultOptions?: PeeaklinkRequestOptions;
};
/**
* Peekalink API client
*/
export declare class PeekalinkClient {
private apiKey;
private endpoint;
private defaultOptions;
constructor(options: PeeaklinkClientOptions);
private buildOptions;
private buildUrl;
private buildHeaders;
/**
* Generate a link preview for a given link.
* @param link The link to generate a preview for.
* @param options Optional request options.
* @param requestOptions Optional fetch request options.
* @returns A Peekalink link preview object.
*/
preview(link: string, options?: PeeaklinkRequestOptions, requestOptions?: RequestInit): Promise<LinkPreview>;
}
//# sourceMappingURL=client.d.ts.map