@aimee-blue/ab-service-kit
Version:
Aimee Blue Service Template
26 lines (25 loc) • 946 B
TypeScript
import { SchedulerLike, Observable } from 'rxjs';
interface ITokenWithExp {
keyId: string;
signedJwt: string;
expiresAtMillis: number;
}
export declare function createSelfSignedTokens(params: {
expireInMillis: number;
rollNewTokenInMillis: number;
scheduler?: SchedulerLike;
}, deps?: {
now: () => Observable<number>;
signJwt: (partialJwt: import("@aimee-blue/ab-auth").ISignJwtParam, deps?: {
time: () => Promise<number>;
auth: typeof import("@aimee-blue/ab-auth/lib/dependencies").buildAuth;
uniqueJwtId: () => Promise<string>;
jwtSign: (payload: string, privateKey: string, opts: any) => Promise<string>;
} | undefined) => Observable<{
keyId: string;
signedJwt: string;
}>;
}): Observable<ITokenWithExp>;
export declare const selfSignedTokens: () => Observable<ITokenWithExp>;
export declare function currentSelfSignedToken(): Promise<string>;
export {};