@strawbinary-io/api-video-strapi-5-plugin
Version:
A powerful Strapi plugin to easily manage your videos and integrate them in your project
181 lines (180 loc) • 6.16 kB
TypeScript
/// <reference types="koa" />
declare const _default: {
register: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => void;
bootstrap: ({ strapi }: {
strapi: any;
}) => Promise<void>;
destroy: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => void;
config: {
default: {};
validator(): void;
};
controllers: {
admin: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => {
createVideoId(ctx: any): Promise<any>;
create(ctx: any): Promise<any>;
findAll(ctx: any): Promise<any>;
token(ctx: any): Promise<any>;
update(ctx: any): Promise<any>;
delete(ctx: any): Promise<any>;
getTopVideos(ctx: any): Promise<any>;
};
'api-video-asset': ({ strapi, }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => {
count: (ctx: import("koa").Context) => Promise<number>;
find: (ctx: import("koa").Context) => Promise<any[]>;
findOne: (ctx: import("koa").Context) => Promise<any>;
} & import("@strapi/types/dist/core/core-api/controller").Base;
settings: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => {
getSettings(ctx: any): Promise<any>;
saveSettings(ctx: any): Promise<any>;
};
};
routes: {
admin: {
type: string;
routes: {
method: string;
path: string;
handler: string;
config: {
policies: any[];
};
}[];
};
settings: {
routes: {
method: string;
path: string;
handler: string;
config: {
policies: any[];
};
}[];
};
'api-video-asset': {
type: string;
routes: {
method: string;
path: string;
handler: string;
}[];
};
};
services: {
settings: ({ strapi, }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => {
getSettings: () => Promise<import("../../types").CustomSettings>;
saveSettings: (settings: import("../../types").CustomSettings) => Promise<boolean>;
} & import("@strapi/types/dist/core/core-api/service").Base;
'api-video-asset': ({ strapi, }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => {
createVideoId: (data: any) => Promise<{
newVideo: import("@api.video/nodejs-client/lib/model/Video").default;
token: import("@api.video/nodejs-client/lib/model/AccessToken").default;
}>;
findAll: (query: any) => Promise<import("@strapi/types/dist/modules/documents").AnyDocument[]>;
token: (videoId: string) => Promise<{
token: string;
}>;
create: (data: import("../../types").CustomVideo) => Promise<boolean>;
delete: (id: string, videoId: string) => Promise<boolean>;
update: (id: string, videoId: string, data: any) => Promise<false | import("@strapi/types/dist/modules/documents").AnyDocument>;
getTopVideos: (query: any) => Promise<{
videoId: string;
metrics: {
views: number;
};
video: {
title: string;
};
}[]>;
} & import("@strapi/types/dist/core/core-api/service").Base;
};
contentTypes: {
'api-video-asset': {
schema: {
kind: string;
collectionName: string;
info: {
name: string;
singularName: string;
pluralName: string;
displayName: string;
};
pluginOptions: {
'content-manager': {
visible: boolean;
};
'content-type-builder': {
visible: boolean;
};
};
options: {
draftAndPublish: boolean;
comment: string;
};
attributes: {
title: {
type: string;
required: boolean;
};
description: {
type: string;
required: boolean;
};
_public: {
type: string;
default: boolean;
required: boolean;
};
videoId: {
type: string;
required: boolean;
maxLength: number;
};
hls: {
type: string;
required: boolean;
};
iframe: {
type: string;
required: boolean;
};
mp4: {
type: string;
required: boolean;
};
player: {
type: string;
required: boolean;
};
thumbnail: {
type: string;
required: boolean;
};
tags: {
type: string;
};
metadata: {
type: string;
};
};
};
};
};
policies: {};
middlewares: {};
};
export default _default;