interface LoginOptions { asAdmin: boolean useiTunes: boolean useYouTube: boolean useLastfm: boolean allowDownload: boolean supportsTranscoding: false } declare namespace Cypress { interface Chainable { $login(options?: Partial): Chainable $loginAsNonAdmin(options?: Partial): Chainable $each(dataset: Array>, callback: (...args) => void): void $confirm(): void $clickSidebarItem(sidebarItemText: string): Chainable /** * Mock audio playback, including intercepting the media request, album thumbnail, media info etc. */ $mockPlayback(): void /** * Queue several songs from the "All Songs" screen. * @param count */ $shuffleSeveralSongs(count?: number): void $getSongRows(): Chainable $getSongRowAt(position: number): Chainable $assertPlaylistSongCount(name: string, count: number): void $assertFavoriteSongCount(count: number): void $selectSongRange(start: number, end: number, scrollBehavior?: scrollBehaviorOptions): Chainable $assertPlaying(): void $assertNotPlaying(): void $assertSidebarItemActive(text: string): void /** * Support finding an element within an element identified with a test ID. * For example, given a DOM like this: *
* *
* then the input can be accessed with: * cy.$findInTestId('my-form input[name=email]') * which is identical to * cy.findByTestId('my-form').find('input[name=email]') */ $findInTestId(selector: string): Chainable> } }