|
|
|
|
@@ -1,22 +1,44 @@
|
|
|
|
|
import { ApplicationIdentifier } from '@standardnotes/common'
|
|
|
|
|
import { ApplicationIdentifier, ContentType } from '@standardnotes/common'
|
|
|
|
|
import { BackupFile, DecryptedItemInterface, ItemStream, PrefKey, PrefValue } from '@standardnotes/models'
|
|
|
|
|
|
|
|
|
|
import { ComponentManagerInterface } from '../Component/ComponentManagerInterface'
|
|
|
|
|
import { ApplicationEvent } from '../Event/ApplicationEvent'
|
|
|
|
|
import { ApplicationEventCallback } from '../Event/ApplicationEventCallback'
|
|
|
|
|
import { FeaturesClientInterface } from '../Feature/FeaturesClientInterface'
|
|
|
|
|
import { ItemsClientInterface } from '../Item/ItemsClientInterface'
|
|
|
|
|
import { MutatorClientInterface } from '../Mutator/MutatorClientInterface'
|
|
|
|
|
import { StorageValueModes } from '../Storage/StorageTypes'
|
|
|
|
|
|
|
|
|
|
import { DeinitCallback } from './DeinitCallback'
|
|
|
|
|
import { DeinitMode } from './DeinitMode'
|
|
|
|
|
import { DeinitSource } from './DeinitSource'
|
|
|
|
|
import { UserClientInterface } from './UserClientInterface'
|
|
|
|
|
|
|
|
|
|
export interface ApplicationInterface {
|
|
|
|
|
deinit(mode: DeinitMode, source: DeinitSource): void
|
|
|
|
|
|
|
|
|
|
getDeinitMode(): DeinitMode
|
|
|
|
|
|
|
|
|
|
isStarted(): boolean
|
|
|
|
|
isLaunched(): boolean
|
|
|
|
|
addEventObserver(callback: ApplicationEventCallback, singleEvent?: ApplicationEvent): () => void
|
|
|
|
|
hasProtectionSources(): boolean
|
|
|
|
|
createEncryptedBackupFileForAutomatedDesktopBackups(): Promise<BackupFile | undefined>
|
|
|
|
|
createDecryptedBackupFile(): Promise<BackupFile | undefined>
|
|
|
|
|
hasPasscode(): boolean
|
|
|
|
|
lock(): Promise<void>
|
|
|
|
|
setValue(key: string, value: unknown, mode?: StorageValueModes): void
|
|
|
|
|
getValue(key: string, mode?: StorageValueModes): unknown
|
|
|
|
|
removeValue(key: string, mode?: StorageValueModes): Promise<void>
|
|
|
|
|
isLocked(): Promise<boolean>
|
|
|
|
|
getPreference<K extends PrefKey>(key: K): PrefValue[K] | undefined
|
|
|
|
|
getPreference<K extends PrefKey>(key: K, defaultValue: PrefValue[K]): PrefValue[K]
|
|
|
|
|
getPreference<K extends PrefKey>(key: K, defaultValue?: PrefValue[K]): PrefValue[K] | undefined
|
|
|
|
|
streamItems<I extends DecryptedItemInterface = DecryptedItemInterface>(
|
|
|
|
|
contentType: ContentType | ContentType[],
|
|
|
|
|
stream: ItemStream<I>,
|
|
|
|
|
): () => void
|
|
|
|
|
get features(): FeaturesClientInterface
|
|
|
|
|
get componentManager(): ComponentManagerInterface
|
|
|
|
|
get items(): ItemsClientInterface
|
|
|
|
|
get mutator(): MutatorClientInterface
|
|
|
|
|
get user(): UserClientInterface
|
|
|
|
|
|
|
|
|
|
readonly identifier: ApplicationIdentifier
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface AppGroupManagedApplication extends ApplicationInterface {
|
|
|
|
|
onDeinit: DeinitCallback
|
|
|
|
|
|
|
|
|
|
setOnDeinit(onDeinit: DeinitCallback): void
|
|
|
|
|
}
|
|
|
|
|
|