Packages
ckeditor5_phoenix
1.25.1
1.28.2
1.28.1
1.28.0
1.27.2
1.27.1
1.27.0
1.26.0
1.25.1
1.25.0
1.24.2
1.24.1
1.24.0
1.23.0
1.22.0
1.21.0
1.20.0
1.19.0
1.18.0
1.17.2
1.17.1
1.17.0
1.16.1
1.16.0
1.15.8
1.15.7
1.15.6
1.15.5
1.15.4
1.15.3
1.15.2
1.15.1
1.15.0
1.14.2
1.14.1
1.14.0
1.13.0
1.12.0
1.11.0
1.10.2
1.10.1
1.10.0
1.9.0
1.8.0
1.7.0
1.6.0
1.5.0
1.4.1
1.4.0
1.3.0
1.2.1
1.2.0
1.1.0
1.0.8
1.0.7
CKEditor 5 integration for Phoenix Framework
Current section
Files
Jump to
Current section
Files
dist/shared/hook.d.ts
import { Hook } from 'phoenix_live_view';
import { RequiredBy } from '../types';
/**
* An abstract class that provides a class-based API for creating Phoenix LiveView hooks.
*
* This class defines the structure and lifecycle methods of a hook, which can be extended
* to implement custom client-side behavior that integrates with LiveView.
*/
export declare abstract class ClassHook {
/**
* The current state of the hook.
*/
state: ClassHookState;
/**
* The DOM element the hook is attached to.
* It includes an `instance` property to hold the hook instance.
*/
el: HTMLElement & {
instance: Hook;
};
/**
* Callbacks to run before the hook is destroyed.
*/
private _beforeDestroyCallbacks;
/**
* Registers a callback to be called before the hook is destroyed.
* Callbacks are called in LIFO order (last registered, first called).
*/
onBeforeDestroy(callback: () => void): void;
/**
* Pushes an event from the client to the LiveView server process.
* @param _event The name of the event.
* @param _payload The data to send with the event.
* @param _callback An optional function to be called with the server's reply.
*/
pushEvent: (_event: string, _payload: any, _callback?: (reply: any, ref: number) => void) => void;
/**
* Pushes an event to another hook on the page.
* @param _selector The CSS selector of the target element with the hook.
* @param _event The name of the event.
* @param _payload The data to send with the event.
* @param _callback An optional function to be called with the reply.
*/
pushEventTo: (_selector: string, _event: string, _payload: any, _callback?: (reply: any, ref: number) => void) => void;
/**
* Registers a handler for an event pushed from the server.
* @param _event The name of the event to handle.
* @param _callback The function to execute when the event is received.
*/
handleEvent: (_event: string, _callback: (payload: any) => void) => void;
/**
* Called when the hook has been mounted to the DOM.
* This is the ideal place for initialization code.
*/
mounted(): any;
/**
* Called when the element has been removed from the DOM.
* Perfect for cleanup tasks.
*/
destroyed(): any;
/**
* Called when the element has been updated by a LiveView patch.
*/
updated(): any;
/**
* Called before the element is updated by a LiveView patch.
*/
beforeUpdate?(): void;
/**
* Called when the client has disconnected from the server.
*/
disconnected?(): void;
/**
* Called when the client has reconnected to the server.
*/
reconnected?(): void;
/**
* Checks if the hook is in the process of being destroyed.
*/
isBeingDestroyed(): boolean;
/**
* Runs all registered before-destroy callbacks and clears the list.
* Called internally by makeHook before destroyed().
*/
_runBeforeDestroyCallbacks(): void;
}
/**
* A type that represents the state of a class-based hook.
*/
export type ClassHookState = 'mounting' | 'mounted' | 'destroying' | 'destroyed';
/**
* A factory function that adapts a class-based hook to the object-based API expected by Phoenix LiveView.
*
* @param constructor The constructor of the class that extends the `Hook` abstract class.
*/
export declare function makeHook(constructor: new () => ClassHook): RequiredBy<Hook<any>, 'mounted' | 'destroyed'>;
//# sourceMappingURL=hook.d.ts.map