import { ISociosImage, ISociosName, ISociosState } from "../const/sociosInterfaces"; export interface IModel { _links?: any; _embedded?: any; } export interface IPaginatedModel extends IModel { } export interface IHrefData { _links?: any; } export interface ILink { href: string; title?: string; } export interface IEmbedData { _embedded?: any; } interface IHalUtilsOptions { prefix?: string; optional?: boolean; } /** * utils for common used data sets in sociossports */ export declare function HalAPIUtils(instanceOptions?: { prefix?: string; }): { embedListLookup: (list: readonly T[], itemHref: string, hrefName?: string) => T; href: (data: IHrefData, name?: string, options?: IHalUtilsOptions, params?: any) => string; embed: (data: IEmbedData, name: string, options?: IHalUtilsOptions) => any; link: (data: IHrefData, name?: string, options?: IHalUtilsOptions) => ILink | null; }; export declare const halAPIUtils: { embedListLookup: (list: readonly T[], itemHref: string, hrefName?: string) => T; href: (data: IHrefData, name?: string, options?: IHalUtilsOptions, params?: any) => string; embed: (data: IEmbedData, name: string, options?: IHalUtilsOptions) => any; link: (data: IHrefData, name?: string, options?: IHalUtilsOptions) => ILink | null; }; export declare namespace APIUtils { const crop_small: string[]; const thumb_large: string[]; /** * get name from ISociosName data * @param {ISociosName} data * @param {string[]} lookup * @returns {string} */ function nameLookup(data: ISociosName, lookup?: readonly string[]): string; function imageLookup(data: ISociosImage, lookup?: readonly string[]): string; function hasState(data: ISociosState, meta: string): boolean; } export {};