DeclareModule General
	Declare Init()
EndDeclareModule

DeclareModule FileCache
	Declare Cache(FileID.s, Path.s, Content.s, *Callback)
	Declare Read_(FileID.s, *Callback)
	Declare Write(FileID.s, Content.s, *Callback)
	Declare GetMeta(FileID.s, *Callback)
	Declare MarkClean(FileID.s, *Callback)
	Declare Evict(FileID.s, *Callback)
	Declare ListCached(*Callback)
	Declare ListDirty(*Callback)
	Declare Exists(FileID.s, *Callback)
EndDeclareModule

DeclareModule FS
	Declare List(Path.s, *Callback)
	Declare Stat(Path.s, *Callback)
	Declare Read_(FileID.s, Path.s, *Callback)
	Declare Write(FileID.s, Path.s, Content.s, *Callback)
	Declare Mkdir(Path.s, *Callback)
	Declare Delete_(FileID.s, *Callback)
	Declare Move(FileID.s, NewParentID.s, NewName.s, *Callback)
	Declare Sync(*Callback)

	Declare.s GetFilePart(Path.s)
	Declare.s GetPathPart(Path.s)
EndDeclareModule

DeclareModule Login
	Declare Open()
EndDeclareModule

DeclareModule Desktop
	Declare Open(Username.s)
	Declare InstallApp(AppName.s, *LaunchProc, Icon.s = "")
	Declare Register(AppName.s, Win, Icon.s = "")
	Declare Unregister(Win)
	Declare InstallThirdPartyApp(AppID.s, ManifestJSON.s, Permissions.s, Icon.s = "")
	Declare UninstallThirdPartyApp(AppID.s)
EndDeclareModule

DeclareModule Notify
	Enumeration
		#Info
		#Success
		#Warning
		#Error
	EndEnumeration

	Declare Toast(Message.s, Type = #Info, Duration = 4000)
	Declare Confirm(Title.s, Message.s, *Callback)
EndDeclareModule

DeclareModule AppRuntime
	Declare Init()
	Declare Launch(AppID.s, ManifestJSON.s, Permissions.s)
EndDeclareModule

; IDE Options = SpiderBasic 3.20 (Windows - x86)
; CursorPosition = 59
; Folding = --
; iOSAppOrientation = 0
; AndroidAppCode = 0
; AndroidAppOrientation = 0
; EnableXP
; DPIAware
; CompileSourceDirectory