Skip to content
TwitterDiscordGitHub

Types

interface HMPLRequestInit {
mode?: RequestMode;
cache?: RequestCache;
redirect?: RequestRedirect;
referrerPolicy?: ReferrerPolicy;
integrity?: string;
referrer?: string;
get?: HMPLRequestGet;
body?: BodyInit | null;
signal?: AbortSignal | null;
window?: any;
credentials?: RequestCredentials;
headers?: HMPLHeadersInit;
timeout?: number;
}
interface HMPLInstance {
response: undefined | Element | null;
status?: HMPLRequestStatus;
requests?: HMPLRequest[];
}
interface HMPLInstanceContext {
request: HMPLRequestContext;
}
interface HMPLRequestContext {
event?: Event;
clearInterval?: () => void;
}
interface HMPLRequest {
response: undefined | Element | null | ChildNode[];
status: number;
id?: string;
}
type HMPLRequestGet = (
prop: string,
value: any,
context: HMPLInstanceContext,
request?: HMPLRequest
) => void;
interface HMPLRequestInfo {
src: string;
method?: string;
initId?: string | number;
after?: string;
repeat?: boolean;
memo?: boolean;
interval?: number;
allowedContentTypes?: HMPLContentTypes;
indicators?: HMPLIndicator[];
sanitize?: HMPLSanitize;
disallowedTags?: HMPLDisallowedTags;
autoBody?: boolean | HMPLAutoBodyOptions;
}
type HMPLCompile = (
template: string,
options?: HMPLCompileOptions
) => HMPLTemplateFunction;
interface HMPLCompileOptions {
memo?: boolean;
autoBody?: boolean | HMPLAutoBodyOptions;
allowedContentTypes?: HMPLContentTypes;
sanitize?: HMPLSanitize;
disallowedTags?: HMPLDisallowedTags;
}
type HMPLTemplateFunction = (
options?:
| HMPLIdentificationRequestInit[]
| HMPLRequestInit
| HMPLRequestInitFunction
) => HMPLInstance;
type HMPLClearInterval = () => void;
interface HMPLAutoBodyOptions {
formData?: boolean;
}
type HMPLInitalStatus =
| "pending"
| "rejected"
| 100
| 101
| 102
| 103
| 300
| 301
| 302
| 303
| 304
| 305
| 306
| 307
| 308
| 400
| 401
| 402
| 403
| 404
| 405
| 406
| 407
| 408
| 409
| 410
| 411
| 412
| 413
| 414
| 415
| 416
| 417
| 418
| 421
| 422
| 423
| 424
| 425
| 426
| 428
| 429
| 431
| 451
| 500
| 501
| 502
| 503
| 504
| 505
| 506
| 507
| 508
| 510
| 511;
type HMPLIndicatorTrigger = HMPLInitalStatus | "error";
type HMPLRequestStatus =
| HMPLInitalStatus
| 200
| 201
| 202
| 203
| 204
| 205
| 206
| 207
| 208
| 226;
type HMPLContentTypes = string[] | "*";
type HMPLDisallowedTag = "script" | "style" | "iframe";
type HMPLDisallowedTags = HMPLDisallowedTag[];
type HMPLSanitize = boolean;
interface HMPLIndicator {
trigger: HMPLIndicatorTrigger;
content: string;
}
interface HMPLHeadersInit {
[key: string]: string;
}
interface HMPLIdentificationRequestInit {
value: HMPLRequestInit | HMPLRequestInitFunction;
id: string | number;
}
type HMPLRequestInitFunction = (
context: HMPLInstanceContext
) => HMPLRequestInit;