@mica/sdk (SDK contract v1)
    Preparing search index...

    Function useContacts

    • OS Service Hook for accessing address book contacts and sharing contacts.

      Returns {
          addContact: (
              firstname: string,
              phone: string,
              lastname?: string,
              avatar?: string,
              favorite?: boolean,
          ) => Promise<Contact>;
          contactsStore: {
              add: (
                  draft: Omit<Contact, "id" | "citizenid" | "created_at" | "updated_at">,
              ) => Promise<Contact>;
              delete: (id: number) => Promise<void>;
              getDeleted: () => Promise<Contact[]>;
              load: () => Promise<void>;
              loaded: {
                  subscribe: (
                      this: void,
                      run: Subscriber<boolean>,
                      invalidate?: () => void,
                  ) => Unsubscriber;
              };
              patch: (id: number, changes: Partial<Contact>) => void;
              restore: (id: number) => Promise<boolean>;
              set: (rows: Contact[]) => void;
              share: (
                  payload: Partial<Contact> & { name?: string; phone: string },
              ) => Promise<void>;
              subscribe: (
                  this: void,
                  run: Subscriber<Contact[]>,
                  invalidate?: () => void,
              ) => Unsubscriber;
              update: (row: Contact) => Promise<void>;
          };
          favoriteContacts: Readable<Contact[]>;
          getDeletedContacts: () => Promise<Contact[]>;
          restoreContact: (id: number) => Promise<boolean>;
          shareContact: (
              firstname: string,
              phone: string,
              lastname?: string,
          ) => Promise<void>;
      }

      • addContact: (
            firstname: string,
            phone: string,
            lastname?: string,
            avatar?: string,
            favorite?: boolean,
        ) => Promise<Contact>
      • contactsStore: {
            add: (
                draft: Omit<Contact, "id" | "citizenid" | "created_at" | "updated_at">,
            ) => Promise<Contact>;
            delete: (id: number) => Promise<void>;
            getDeleted: () => Promise<Contact[]>;
            load: () => Promise<void>;
            loaded: {
                subscribe: (
                    this: void,
                    run: Subscriber<boolean>,
                    invalidate?: () => void,
                ) => Unsubscriber;
            };
            patch: (id: number, changes: Partial<Contact>) => void;
            restore: (id: number) => Promise<boolean>;
            set: (rows: Contact[]) => void;
            share: (
                payload: Partial<Contact> & { name?: string; phone: string },
            ) => Promise<void>;
            subscribe: (
                this: void,
                run: Subscriber<Contact[]>,
                invalidate?: () => void,
            ) => Unsubscriber;
            update: (row: Contact) => Promise<void>;
        }
      • favoriteContacts: Readable<Contact[]>
      • getDeletedContacts: () => Promise<Contact[]>

        The "Recently Deleted" list (MICA-75-wiring) — see services/contacts.ts.

      • restoreContact: (id: number) => Promise<boolean>
      • shareContact: (firstname: string, phone: string, lastname?: string) => Promise<void>