UNPKG

1.83 kBTypeScriptView Raw
1export declare function sanitizeDomain(domain: string | null): string | undefined;
2/**
3 * Returns sanitized config
4 *
5 * @method sanitizeConfig
6 * @return {object|undefined} config with sanitized domain
7 */
8export declare function sanitizeConfig(config: any): any;
9export interface IOriginPackage {
10 name: string;
11 version: string;
12}
13export interface IConfigStorage {
14 domain?: string;
15 originPackage?: IOriginPackage;
16}
17/**
18 * Config factory
19 *
20 * @param {object|null} configStorage config object
21 * @method createModule
22 * @return SDK config module
23 */
24export declare class ConfigModule {
25 private configStorage;
26 constructor(configStorage: IConfigStorage);
27 /**
28 * Sets custom domain. Parameter is url which has always to be https://
29 * (if you don't provide it, we will do it for you).
30 *
31 * RegExp inspired taken from
32 * https://github.com/jarib/google-closure-library/blob/master/closure/goog/string/linkify.js
33 * @param {String|null} domain valid domain starting with https:// or null for removing
34 * @method setCustomDomain
35 */
36 setCustomDomain(domain: string): void;
37 /**
38 * Returns current domain
39 *
40 * @method getCustomDomain
41 */
42 getCustomDomain(): string | undefined;
43 /**
44 * Sets JS package and version info
45 *
46 * @method setJsPackage
47 * @param {String} name package name
48 * @param {String} version package version (semver)
49 * @private
50 */
51 setJsPackage(name: string, version: string): void;
52 /**
53 * Returns JS package and version info
54 *
55 * @method getJsPackage
56 * @return {object} with 'name' and 'version' properties
57 * @private
58 */
59 getJsPackage(): IOriginPackage | undefined;
60 setRequestHeader(key: string, value: string): void;
61 getRequestHeader(key: string): any;
62}