export declare const ENDPOINT = "http://webservice.recruit.co.jp/hotpepper"; export declare type BooleanNum = 0 | 1; export declare type SuccessfulStatus = 200; export declare type FailedStatus = 1000 | 2000 | 3000; export interface SuccessfulResponseBase { api_version: string; results_available: number; results_returned: number; results_start: number; } export interface FailedResponse { api_version: string; error: [ { code: FailedStatus; message: string; } ]; } export interface MasterResponse { code: string; name: string; } export declare type ResponseField = { results: SuccessfulResponseBase & T; } | { results: FailedResponse; }; export interface SuccessfulResult> { status: SuccessfulStatus; result: T extends { [key in keyof T]: SuccessfulResponseBase & infer U; } ? Exclude : never; rawJson: T extends ResponseField ? Extract : never; } export interface FailedResult> { status: FailedStatus; error: FailedResponse['error'][0]['message']; rawJson: Extract; } export declare type HotPepperResponse> = SuccessfulResult | FailedResult; export declare const isSuccessfulResponse: (response: ResponseField) => response is { results: SuccessfulResponseBase & T; }; export declare const formatParams: (params: Record) => Record;