mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-30 20:14:49 +00:00
misc sdk changes (#2934)
* misc sdk changes * delete the store ☠️ * port comments * fix build * fix removing * fix tests * beta.20 --------- Co-authored-by: Matt Hill <mattnine@protonmail.com>
This commit is contained in:
@@ -1,22 +1,19 @@
|
||||
import * as T from "../../../base/lib/types"
|
||||
|
||||
export type InstallFn<Manifest extends T.SDKManifest, Store> = (opts: {
|
||||
export type InstallFn<Manifest extends T.SDKManifest> = (opts: {
|
||||
effects: T.Effects
|
||||
}) => Promise<null | void | undefined>
|
||||
export class Install<Manifest extends T.SDKManifest, Store> {
|
||||
protected constructor(readonly fn: InstallFn<Manifest, Store>) {}
|
||||
export class Install<Manifest extends T.SDKManifest> {
|
||||
protected constructor(readonly fn: InstallFn<Manifest>) {}
|
||||
}
|
||||
|
||||
export class PreInstall<Manifest extends T.SDKManifest, Store> extends Install<
|
||||
Manifest,
|
||||
Store
|
||||
> {
|
||||
private constructor(fn: InstallFn<Manifest, Store>) {
|
||||
export class PreInstall<
|
||||
Manifest extends T.SDKManifest,
|
||||
> extends Install<Manifest> {
|
||||
private constructor(fn: InstallFn<Manifest>) {
|
||||
super(fn)
|
||||
}
|
||||
static of<Manifest extends T.SDKManifest, Store>(
|
||||
fn: InstallFn<Manifest, Store>,
|
||||
) {
|
||||
static of<Manifest extends T.SDKManifest>(fn: InstallFn<Manifest>) {
|
||||
return new PreInstall(fn)
|
||||
}
|
||||
|
||||
@@ -27,22 +24,19 @@ export class PreInstall<Manifest extends T.SDKManifest, Store> extends Install<
|
||||
}
|
||||
}
|
||||
|
||||
export function setupPreInstall<Manifest extends T.SDKManifest, Store>(
|
||||
fn: InstallFn<Manifest, Store>,
|
||||
export function setupPreInstall<Manifest extends T.SDKManifest>(
|
||||
fn: InstallFn<Manifest>,
|
||||
) {
|
||||
return PreInstall.of(fn)
|
||||
}
|
||||
|
||||
export class PostInstall<Manifest extends T.SDKManifest, Store> extends Install<
|
||||
Manifest,
|
||||
Store
|
||||
> {
|
||||
private constructor(fn: InstallFn<Manifest, Store>) {
|
||||
export class PostInstall<
|
||||
Manifest extends T.SDKManifest,
|
||||
> extends Install<Manifest> {
|
||||
private constructor(fn: InstallFn<Manifest>) {
|
||||
super(fn)
|
||||
}
|
||||
static of<Manifest extends T.SDKManifest, Store>(
|
||||
fn: InstallFn<Manifest, Store>,
|
||||
) {
|
||||
static of<Manifest extends T.SDKManifest>(fn: InstallFn<Manifest>) {
|
||||
return new PostInstall(fn)
|
||||
}
|
||||
|
||||
@@ -53,8 +47,8 @@ export class PostInstall<Manifest extends T.SDKManifest, Store> extends Install<
|
||||
}
|
||||
}
|
||||
|
||||
export function setupPostInstall<Manifest extends T.SDKManifest, Store>(
|
||||
fn: InstallFn<Manifest, Store>,
|
||||
export function setupPostInstall<Manifest extends T.SDKManifest>(
|
||||
fn: InstallFn<Manifest>,
|
||||
) {
|
||||
return PostInstall.of(fn)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user