decentraland-crypto-middleware
Version:
Decentraland Authentication Middleware
31 lines (30 loc) • 1.32 kB
TypeScript
import RequestError from './errors';
export declare const AUTH_CHAIN_HEADER_PREFIX = "x-identity-auth-chain-";
export declare const AUTH_TIMESTAMP_HEADER = "x-identity-timestamp";
export declare const AUTH_METADATA_HEADER = "x-identity-metadata";
export declare const DEFAULT_CATALYST = "https://peer-lb.decentraland.org";
export declare const DEFAULT_EXPIRATION: number;
export declare const DEFAULT_ERROR_FORMAT: (err: RequestError) => {
ok: boolean;
message: string;
};
export declare type DecentralandSignatureData<P extends {} = {}> = {
auth: string;
authMetadata: P;
};
export declare type DecentralandSignatureContext<P extends {} = {}> = {
verification?: DecentralandSignatureData<P>;
};
export declare type DecentralandSignatureRequiredContext<P extends {} = {}> = {
verification: DecentralandSignatureData<P>;
};
export declare type VerifyAuthChainHeadersOptions<P extends Record<string, any> = Record<string, any>> = {
catalyst?: string;
expiration?: number;
verifyMetadataContent?: (authMetadata: P | undefined) => boolean;
};
export declare type SessionOptions = {
optional?: boolean;
onError?: (err: RequestError) => any;
};
export declare type Options<P extends Record<string, any> = Record<string, any>> = VerifyAuthChainHeadersOptions<P> & SessionOptions;