NativeViewMethods
Methods the view's element answers, the spec's methods: arguments and a
Promise of a result that are JSON values or ArrayBuffers. They run on the
main thread with the view.
Utilização
Declare a custom native slider view.
Este tipo é usado por view
// Declare a custom native slider view.
import { defineModule, view } from 'kuito';
type SliderProps = {
value: number;
min?: number;
max?: number;
onChange?: (value: number) => void;
};
export default defineModule('Slider', {
view: view<SliderProps>({ events: ['change'] }),
ios: { class: 'KuitoSliderModule' },
android: { class: 'dev.kuito.runtime.modules.slider.KuitoSliderModule' },
});Declaração do tipo
export type NativeViewMethods<M> = {
[K in keyof M]: M[K] extends (...args: infer A) => Promise<infer R>
? [A] extends [(ModuleData | undefined)[]]
? [R] extends [ModuleData | void]
? M[K]
: never
: never
: never;
};Tipo
{ [K in keyof M]: M[K] extends (...args: infer A) => Promise<infer R> ? [A] extends [ModuleData[]] ? [R] extends [void | ModuleData] ? M[K] : never : never : never; }Gerado a partir das declarações TypeScript públicas: assinaturas, props e predefinições vêm da fonte verificada, as descrições da sua JSDoc. Nenhuma predefinição é inventada.