v-shared-element
Version:
Declarative shared-element transitions between pages for Vue.js and Nuxt.js
17 lines (16 loc) • 888 B
TypeScript
import { Vue } from 'vue-2/types/vue';
import { NavigationGuard as NavigationGuard3, VueRouter as VueRouter3 } from 'vue-router-3/types/router';
import { NavigationGuard as NavigationGuard4, NavigationGuardWithThis, Router as VueRouter4 } from 'vue-router-4';
import { ICachedSharedElement } from './types/ICachedSharedElement';
import { ISharedElementCandidate } from './types/ISharedElementCandidate';
type NavigationGuard = NavigationGuard3<Vue> & NavigationGuard4 & NavigationGuardWithThis<undefined>;
type VueRouter = VueRouter3 & VueRouter4;
export declare function createRouteGuard(sharedElementCandidates: Map<string, ISharedElementCandidate>, sharedElementCache: Map<string, ICachedSharedElement>): {
SharedElementRouteGuard: NavigationGuard;
NuxtSharedElementRouteGuard: (context: {
app: {
router: VueRouter;
};
}) => void;
};
export {};