UNPKG

opengpio

Version:

A performant c++ based general purpose GPIO controller for linux devices. OpenGPIO is written using libgpiod, line & chip based abstractions.

23 lines (22 loc) 876 B
export declare enum Edge { Rising = 1, Falling = -1, Both = 0 } export type Gpio = { chip: number; line: number; }; export type DutyCycleSetter = (dutyCycle: number) => void; export type FrequencySetter = (frequency: number) => void; export type CleanupCallback = () => void; export type PinSetter = (value: boolean) => void; export type PinGetter = () => boolean; export type WatchCallback = (value: boolean) => void; export type OpenGpioBindings = { info: () => string; input: (chip: number, line: number) => [PinGetter, CleanupCallback]; output: (chip: number, line: number) => [PinSetter, CleanupCallback]; watch: (chip: number, line: number, callback: WatchCallback) => [PinGetter, CleanupCallback]; pwm: (chip: number, line: number, dutyCycle: number, frequency: number) => [DutyCycleSetter, FrequencySetter, CleanupCallback]; };