@jbrowse/plugin-authentication
Version:
JBrowse 2 Authentication
132 lines (131 loc) • 4.93 kB
TypeScript
import type { HTTPBasicInternetAccountConfigModel } from './configSchema';
import type { UriLocation } from '@jbrowse/core/util/types';
import type { Instance } from 'mobx-state-tree';
declare const stateModelFactory: (configSchema: HTTPBasicInternetAccountConfigModel) => import("mobx-state-tree").IModelType<{
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
type: import("mobx-state-tree").ISimpleType<string>;
configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
name: {
description: string;
type: string;
defaultValue: string;
};
description: {
description: string;
type: string;
defaultValue: string;
};
authHeader: {
description: string;
type: string;
defaultValue: string;
};
tokenType: {
description: string;
type: string;
defaultValue: string;
};
domains: {
description: string;
type: string;
defaultValue: never[];
};
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "internetAccountId">>;
} & {
type: import("mobx-state-tree").ISimpleType<"HTTPBasicInternetAccount">;
configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
tokenType: {
description: string;
type: string;
defaultValue: string;
};
validateWithHEAD: {
description: string;
type: string;
defaultValue: boolean;
};
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
name: {
description: string;
type: string;
defaultValue: string;
};
description: {
description: string;
type: string;
defaultValue: string;
};
authHeader: {
description: string;
type: string;
defaultValue: string;
};
tokenType: {
description: string;
type: string;
defaultValue: string;
};
domains: {
description: string;
type: string;
defaultValue: never[];
};
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "internetAccountId">>, undefined>>;
}, {
readonly name: string;
readonly description: string;
readonly internetAccountId: string;
readonly authHeader: string;
readonly tokenType: string;
readonly domains: string[];
readonly toggleContents: React.ReactNode;
readonly SelectorComponent: import("@jbrowse/core/util/types").AnyReactComponentType | undefined;
readonly selectorLabel: string | undefined;
} & {
handlesLocation(location: UriLocation): boolean;
readonly tokenKey: string;
} & {
getTokenFromUser(_resolve: (token: string) => void, _reject: (error: Error) => void): void;
storeToken(token: string): void;
removeToken(): void;
retrieveToken(): string | null;
validateToken(token: string, _loc: UriLocation): Promise<string>;
} & {
getToken(location?: UriLocation): Promise<string>;
} & {
addAuthHeaderToInit(init?: RequestInit, token?: string): {
headers: Headers;
body?: BodyInit | null;
cache?: RequestCache;
credentials?: RequestCredentials;
integrity?: string;
keepalive?: boolean;
method?: string;
mode?: RequestMode;
priority?: RequestPriority;
redirect?: RequestRedirect;
referrer?: string;
referrerPolicy?: ReferrerPolicy;
signal?: AbortSignal | null;
window?: null;
};
getPreAuthorizationInformation(location: UriLocation): Promise<{
internetAccountType: string;
authInfo: {
token: string;
configuration: any;
};
}>;
} & {
getFetcher(loc?: UriLocation): (input: RequestInfo, init?: RequestInit) => Promise<Response>;
} & {
openLocation(location: UriLocation): import("@jbrowse/core/util/io").RemoteFileWithRangeCache;
} & {
readonly validateWithHEAD: boolean;
} & {
getTokenFromUser(resolve: (token: string) => void, reject: (error: Error) => void): void;
validateToken(token: string, location: UriLocation): Promise<string>;
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
export default stateModelFactory;
export type HTTPBasicStateModel = ReturnType<typeof stateModelFactory>;
export type HTTPBasicModel = Instance<HTTPBasicStateModel>;