| 139 | }; |
| 140 | |
| 141 | export interface Implementation { |
| 142 | authComponent: () => void; |
| 143 | restoreUser: (user: User) => Promise<User>; |
| 144 | |
| 145 | authenticate: (credentials: Credentials) => Promise<User>; |
| 146 | logout: () => Promise<void> | void | null; |
| 147 | getToken: () => Promise<string | null>; |
| 148 | |
| 149 | getEntry: (path: string) => Promise<ImplementationEntry>; |
| 150 | entriesByFolder: ( |
| 151 | folder: string, |
| 152 | extension: string, |
| 153 | depth: number, |
| 154 | ) => Promise<ImplementationEntry[]>; |
| 155 | entriesByFiles: (files: ImplementationFile[]) => Promise<ImplementationEntry[]>; |
| 156 | |
| 157 | getMediaDisplayURL?: (displayURL: DisplayURL) => Promise<string>; |
| 158 | getMedia: (folder?: string) => Promise<ImplementationMediaFile[]>; |
| 159 | getMediaFile: (path: string) => Promise<ImplementationMediaFile>; |
| 160 | |
| 161 | persistEntry: (entry: Entry, opts: PersistOptions) => Promise<void>; |
| 162 | persistMedia: (file: AssetProxy, opts: PersistOptions) => Promise<ImplementationMediaFile>; |
| 163 | deleteFiles: (paths: string[], commitMessage: string) => Promise<void>; |
| 164 | |
| 165 | unpublishedEntries: () => Promise<string[]>; |
| 166 | unpublishedEntry: (args: { |
| 167 | id?: string; |
| 168 | collection?: string; |
| 169 | slug?: string; |
| 170 | }) => Promise<UnpublishedEntry>; |
| 171 | unpublishedEntryDataFile: ( |
| 172 | collection: string, |
| 173 | slug: string, |
| 174 | path: string, |
| 175 | id: string, |
| 176 | ) => Promise<string>; |
| 177 | unpublishedEntryMediaFile: ( |
| 178 | collection: string, |
| 179 | slug: string, |
| 180 | path: string, |
| 181 | id: string, |
| 182 | ) => Promise<ImplementationMediaFile>; |
| 183 | updateUnpublishedEntryStatus: ( |
| 184 | collection: string, |
| 185 | slug: string, |
| 186 | newStatus: string, |
| 187 | ) => Promise<void>; |
| 188 | publishUnpublishedEntry: (collection: string, slug: string) => Promise<void>; |
| 189 | deleteUnpublishedEntry: (collection: string, slug: string) => Promise<void>; |
| 190 | getDeployPreview: ( |
| 191 | collectionName: string, |
| 192 | slug: string, |
| 193 | ) => Promise<{ url: string; status: string } | null>; |
| 194 | |
| 195 | allEntriesByFolder?: ( |
| 196 | folder: string, |
| 197 | extension: string, |
| 198 | depth: number, |
nothing calls this directly
no outgoing calls
no test coverage detected